
汇编
一些汇编知识
qq_45849888
安静地写一些学习总结。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
汇编语言:x86汇编指令大全及其注意事项
使用最精炼的语言,记录我遇到的所有常用或不常用或极其重要的汇编指令及其注意事项,以方便自己和读者进行查阅,如有错误敬请指证。 Part 1 积少成多,持续更新。(这将会是一个极其漫长的过程) 表格中各条指令的顺序根据笔者所认为的重要或常用程度进行排序,仅供参考。 Part 2 本表格中所涉及的F是指状态寄存器,CF指进位标志位,其它以此类推。 指令 作用 注意事项 示例 mov dest, src 传送指令 1.dest和src不能同时为存储器操作数2.CS不能作为dest3.段寄存器之间不原创 2020-05-15 15:30:56 · 1602 阅读 · 0 评论 -
汇编语言:文件复制源码
这篇是一个复制文件的汇编程序,它的作用是将当前目录下的一个文件的内容复制到另一个文件中。 这个程序有以下几点需要注意的地方: 文件最大允许的字节数我设置为512 bytes,可根据实际情况自行变动 复制操作的源文件和目标文件的文件名都可以由用户输入。注意:源文件必须存在,否则报错;目标文件可以不必存在,不存在则创建,存在则覆盖。 注意dos中断的3c号创建文件功能的一些限制条件,需要将cx置为零,其含义是所创建文件的属性。需要特别关注。 下面给出源代码: ...原创 2020-05-14 14:56:39 · 1471 阅读 · 0 评论 -
汇编语言:复合表达式计算器
这一篇是一个可以计算简单复合表达式的汇编程序。有错误烦请指正。 由于想用汇编来做完整的符合表达式计算还是一件很麻烦的事,所以此次的汇编程序有诸多限制: 不能出现负数(负数的前导负号会被认为是减号) 不能出现括号或者用括号来划定优先级 复合计算表达式必须以’#'结尾,否则程序无法停止 可以允许出现的符号是数字、+、-、*、/ 这几种 目前的限制大致就是以上几点,而且我也不准备继续再继续改进、完善这个程序了。因为这种程序的改进实质上只是在已知知识的基础上进行的重复劳动而已,没有必要。 下面是程序源码: ds原创 2020-05-12 13:17:26 · 883 阅读 · 2 评论 -
汇编语言:循环程序设计示例
文章目录1.题目2.汇编代码3.总结 1.题目 作为演示,用以下题目来作为示例进行编程: 已知内存DATA开始的存储区存放若干个字节数据,数据个数在 COUNT单元中存放。编制程序求其中正数平均值及负数平均值, 并分别存入MEANP和MEANM单元。 这个程序并不十分复杂,但是有两个注意点: 1.计算平均值取整数部分即可 2.所有数据的和用字单元存放(这会给我们带来一些麻烦) 麻烦在于负数的求...原创 2020-04-17 22:08:49 · 3472 阅读 · 0 评论 -
汇编语言:简单的16位二进制相加程序
这可以说是第一个我自己写的汇编程序,虽然很短。。 功能很简单,实现两个16位二进制数相加即可。 step 1.写汇编代码 下面是实现功能的相应代码: DSEG SEGMENT DATA_1 DW ? DATA_2 DW ? DSEG ENDS SSEG SEGMENT STACK TOP_PTR DB 20 DUP(0) SSEG ENDS CSEG SEGMENT ASSUME DS : DS...原创 2020-03-04 16:36:15 · 11014 阅读 · 3 评论 -
汇编语言:8421 BCD码加减法的修正问题
文章目录1.文章内容概述2.BCD码加法修正2.1调整方法3.BCD码减法修正3.1调整方法4.更特殊:21 - 45 = -24类的修正方法4.1调整方法 1.文章内容概述 首先要明白, BCD码的取值是从0000到1001(也就是十进制的0到9) 有时对BCD码进行加法或减法会有这个范围以外的值出现,需要人为调整方能得出正确的结果。 而本文即讲对此的修正方法。 2.BCD码加法修正 举例:...原创 2020-03-01 12:09:00 · 13814 阅读 · 6 评论