汇编语言
1. shl左移指令
- shl是逻辑左移指令,它的功能是将一个reg或内存单元中的数据向左移位;将最后移出的一位写入cf中;最低位用0补充
- shl:shift left
- 例如:0100 1000b 往左移一位,变成10010000b,即48h变成90h
2. shr右移指令
- shr是逻辑右移指令,它的功能是将一个reg或内存单元中的数据向右移位;将最后移出的一位写入cf中;最高位用0补充
- shr:shift right
- 例如:10010000b往右移一位变成0100 1000b ,即90h变成48h
3. inc增加指令
- 给reg增加1位,例如0002h inc 后变成0003 h
- inc:increase增加
4. dec减少指令
- 给reg减少1位,例如0004 h变成0003 h
- dec:decrease减少
5. xchg交换指令
- 将两个reg的值交换,这样子就不用第三个reg来做中间的水桶,即倒水法交换两个reg的值,更方便
6. neg取反指令
- 例如:1111h取反之后就是eeeeh,即0001 0001 0001 0001b取反后为 1110 1110 1110 1110b。
7. int中断指令
-
中断,可以
int 0来中断程序
-
安全退出程序的写法
mov ax,4c00
int 21
t
t
当cs = f000时,说明程序已经中断,为了跳出中断的程序,cs会从073f指向f000,同时程序也已经退出了。
8. nop空指令
-
可以用来占位,刚好占一个字节,可以将其当做一个空的代码段
-
这里用了3个nop