以前的时候你有个手表,里面的数字是九,如果加一个1就是0了,就会产生进位,
不过这个是10进制进位的,所以应该是 a了,但是a的话就出错了.所以我们就出来了这个调整指令直接变为零,然后进位,也就是16进制码当做10进制使用...压缩BCD吗的加减调整指令
DAA(加法的调整指令) DAS (减法的调整指令)
DAA 后缀A是Add的意思,后缀s是Sub的意思
例子
mov al,68h
;压缩的BCD码是68
mov bl...(和C语言一样)
作用:
将操作数移动一位或多位,分成逻辑移位和算术移位,分别具有左移或右移操作
操作指令:
SHL reg/mem,1/CL (其中CL是次数,在8086的中,移动一次可以直接写...,但是移动多次比如放到计数器中)
例如
SHL al,1 (移动一个可以)
SHL al,2 (这样不可以,必须放到CL中)
改为
mov cl...逻辑右移SHR 值CF位补零
SAR则补符号位
移位指令对标志的影响
按照移入的位设置进位标志CF
根据移位后的结果影响SF、ZF、PF
对AF没有定义
如果进行一位移动,则按照操作数的最高符号位是否改变