小吴学汇编之第二章--寄存器(2)

2.3          几条汇编指令

         前面我们说过,汇编指令通过控制CPU进行工作,那么下表是几条汇编指令。

         注意,为了使具有高级语言基础的读者更好理解指令的含义,有时会用文字描述和高级语言描述这两种方式来描述一条汇编指令的含义。在写一条汇编指令或一个寄存器的名称时不区分大小。如:mov ax,18和MOV AX,18的含义相同。

         接下来看一下CPU执行下表中的程序段的每条指令后,对寄存器中的数据进行的改变。

         注意:AX与BX初始值分别为,AX中的值:0000H        BX中的值:0000H

         其实结合上面两个表,我们可以清楚了解到MOV与ADD指令的作用。MOV就相当于C语言中的对一个变量进行赋值的操作,例如:int ax = 18。ADD相当于C语言中的+=运算,例如: int ax += bx。这么解释,大家都理解吧。

         那么假如在上表中,我们执行这么一条指令:ADD AX,BX,运算后,AX的值是多少?相信不少人认为是1044CH,其实这也是对的,但是在这里是错的。因为我们前面说过,AX寄存器是16位寄存器,只能存放4位十六进制的数据,最大能保存的数据是FFFFH,所以在这里,最高位的1不能保存在AX中。所以最终的结果为:044CH。

         我们再来看一个表

         在这里,如果有认真看小吴的笔记,就会知道AL,AH,BL,BH其实就是小吴前面说过的AX16位寄存器中的高8位AH和低8位AL。有人会对ADD AL,BL的运算有疑惑,在这里小吴给大家解释一下。

AX中的数据存放如下表:

0

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值