第十四章 端口
访问端口:使用in和out指令分别往端口读和写 ,如:in al,60H ;就是往al中写入60H中的数据,读入一个字节,这里的端口读写和内存的读写是一样的,只是执行的对象不同
COMS RAM 芯片:
1.包含一个时钟和一个由128个存储单元的RAM存储器,早期的计算机为64个字节
2.该芯片靠电池供电,因此,关机后其内部的实时钟仍可以正常工作,RAM 的信息不会丢失,就是说关机后时间啊啥的开机信息不会改变
3.128个字节的RAM中,内部实时钟占用0-1dH的单元来保存时间信息,其余的大部分单元用于保存系统配置信息,供系统启动时BIOS程序读取
4.CMOS芯片内部有两个端口,端口地址为70H和71H,CPU通过这两个端口读写COMS的RAM
5.70为地址端口,存放要访问的CMOS的RAM单元的地址,71H为数据端口,存放从选中的CMOS的RAM单元中读取的数据,或要写入的数据
可见CPU对COMS RAM的读写分为两步进行 如:读取COMS RAM的2号单元: 1.将2号送入端口70H,2从71H读取2号单元的内容
shl 和 shr 指令:分别是逻辑左移和逻辑右移指令,具体的执行过程如下:
1.将一个寄存器或内存单元中的数据左移(shl)一位
2.将最后移出的一位写入CF中
3.最低位用0补充
例如: mov al,01001000B
shl al,1 ;将al中的数据左移一位
执行后al 中的数据 = 1001000B ,CF = 0
如果移动的位数大于1时,必须将移动位数放入CL中
若: mov al,0101001B
mov cl,3
shl al,
此时,cl = 010,则CF=0,是保存最后一位移出的值
shr:操作和 shl相反,就是将数据右移N位,然后最高位补零,把右移的最后一位放入CF中,所有的移出位放入CL中
CMOS RAM中存放着当前时间信息:
秒:00H,分:02H,时:04H,日:07H,月:08H,年:09H ,这些信息的长度都是一个字节
BCD码:
数码&
访问端口:使用in和out指令分别往端口读和写 ,如:in al,60H ;就是往al中写入60H中的数据,读入一个字节,这里的端口读写和内存的读写是一样的,只是执行的对象不同
COMS RAM 芯片:
1.包含一个时钟和一个由128个存储单元的RAM存储器,早期的计算机为64个字节
2.该芯片靠电池供电,因此,关机后其内部的实时钟仍可以正常工作,RAM 的信息不会丢失,就是说关机后时间啊啥的开机信息不会改变
3.128个字节的RAM中,内部实时钟占用0-1dH的单元来保存时间信息,其余的大部分单元用于保存系统配置信息,供系统启动时BIOS程序读取
4.CMOS芯片内部有两个端口,端口地址为70H和71H,CPU通过这两个端口读写COMS的RAM
5.70为地址端口,存放要访问的CMOS的RAM单元的地址,71H为数据端口,存放从选中的CMOS的RAM单元中读取的数据,或要写入的数据
可见CPU对COMS RAM的读写分为两步进行 如:读取COMS RAM的2号单元: 1.将2号送入端口70H,2从71H读取2号单元的内容
shl 和 shr 指令:分别是逻辑左移和逻辑右移指令,具体的执行过程如下:
1.将一个寄存器或内存单元中的数据左移(shl)一位
2.将最后移出的一位写入CF中
3.最低位用0补充
例如: mov al,01001000B
shl al,1 ;将al中的数据左移一位
执行后al 中的数据 = 1001000B ,CF = 0
如果移动的位数大于1时,必须将移动位数放入CL中
若: mov al,0101001B
mov cl,3
shl al,
此时,cl = 010,则CF=0,是保存最后一位移出的值
shr:操作和 shl相反,就是将数据右移N位,然后最高位补零,把右移的最后一位放入CF中,所有的移出位放入CL中
CMOS RAM中存放着当前时间信息:
秒:00H,分:02H,时:04H,日:07H,月:08H,年:09H ,这些信息的长度都是一个字节
BCD码:
数码&