汇编网首页登录博客注册
fpamc的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态

[2012-05-10 19:51] 第十四章笔记

第十四章 端口
在PC机系统中,和cpu通过总线相连芯片除各种寄存器外,还有以下3种芯片:
① 各种接口卡上的接口芯片,他们控制接口卡进行工作;
② 主板上的接口芯片,cpu通过他们对部分外设进行访问;
③ 其他芯片,用来存储相关的系统消息,或进行相关的输入输出处理。

从cpu的角度,将这些寄存器都当做端口,对他们进行统一编址从而建立了一个统一的端口地址空间,每一个端口在地址空间中都有一个地址。

cpu可以直接读写以下三个地方的数据:
① cpu内部的寄存器;
② 内存单元;
③ 端口

在PC系统中,cpu最多可以定位64KB个不同的端口,则端口地址的范围为0~65535
端口的读写指令只有两条:in和out。

在in和out指令中,只能使用ax或al来存放从端口中读入的数据或要发送到端口中的数据。
对0~255以内的端口进行读写时,可直接写出端口号。
对256~65535的端口进行读写时,端口号放在dx中。

CMOS RAM芯片,简称CMOS,有两个端口:  
70h为地址端口,存放要访问的CMOS单元的地址  
71h为数据端口,存放从选定的CMOS单元中读取的数据,或要写入的数据  

CPU对CMOS RAM的读写分两步进行:  
1、将N送入端口70h  
2、从端口71h处读出N号单元内容 

shl和shr是逻辑位移指令。
shl是逻辑左移指令,它的功能为:
① 将一个寄存器或内存单元中的数据向左移;
② 将最后移出的一位写入CF中;
③ 最低位用0补充。

shr是逻辑右指令,与shl相反。
如果移动位数大于1时,必须将移动位数放在cl中。

将X逻辑左移N位,相当于执行X=X*2^N
将X逻辑右移N位,相当于执行X=X/2^N

BCD码——4位2进制表示10进制数码,一个字节表示两个BCD码,两个BCD码表示两位的10进制数
BCD码+30h=10进制数对应的ASCII码

CMOS RAM存放着当前时间:每个信息长度1字节,以BCD码方式存放
时间存放单元:
秒 分 时 日 月 年
0 2 4 7 8 9
评论次数(1)  |  浏览次数(223)  |  类型(汇编笔记) |  收藏此文  | 

[  tomato   发表于  2012-05-10 23:29  ]

不错!!!

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码