汇编学习笔记(一)

CPU

CPU可以接读写3个地方的数据:
(1)CPU内部的寄存器
(2)内存单元
(3)端口

端口

端口:物理上可能处于不同的芯片的一组可以由CPU读写的寄存器。
CPU将这些寄存器当做端口,对它们统一编址,从而建立一个统一的端口地址空间。
(1)只能用in 和out对端口进行读写,只能用ax或al存放从端口读入的数据或要发送到端口中的数据。8bit用al,16bit用ax。
例:

in al,60h

从60h端口读入一个字节。

out 60h,al

向60h写入一个字节。

(2)shl、shr指令
shl:逻辑左移指令·
功能:(1)将一个寄存器或内存单元中的数据向左移位
   (2)将最后移出的一位写入CF中
   (3)最低位用0补充。
例:

mov al,01001000b
shl al,1    ;将al中的数据左移一位

执行后(al)=10010000b (CF)=0
如果移动位数大于1,必须将移动位数放在cl中
例:

mov al,01010001b
mov cl,3
shl al,cl    ;将al中的数据左移三位

(al)=10001000b cf=0

shr:逻辑右移指令
功能:(1)将一个寄存器或内存单元中的数据向右移位
   (2)将最后移出的一位写入CF
   (3)最高位用0补充
如果移动位数大于1,必须将移动位数放在cl中。其余均同shl

你可能感兴趣的:(汇编,汇编)