在80x86体系结构中,寄存器的使用方式有很多方面需要注意,总结一下:
push,pop
16位数据传送指令,意味着操作数只能是16位,不能是al类型
push执行的操作是ax中的高位传送到sp-1,低位传送到sp-2
mov
mov指令只能用于内存内容传送到寄存器,寄存器内容传送到内存,也就是说mov [si],[di]这样的从内存直接到内存是行不通的
out
out指令的端口号只能是立即数或者预先存储在dx中,而要输出的数据则只能为立即数或者预先存储在ax中,使用立即数作为端口号范围为00H-FFH而使用dx作为端口号寄存器则范围为0000H-FFFFH
in
in指令的端口号只能是立即数或者预先存储在dx中,而要输入的数据则只能为存储在ax中,使用立即数作为端口号范围为00H-FFH而使用dx作为端口号寄存器则范围为0000H-FFFFH
未完待续