请问这道题端口A、B和控制端口的地址是怎么计算出来的?(微机原理) 50

 我来答
ASSEMBLYZENG
2016-08-26 · TA获得超过251个赞
知道答主
回答量:27
采纳率:100%
帮助的人:27.1万
展开全部
无论在单片机还是电脑,内存映射或端口映射IO的地址都是通过硬件生产方在硬件上设置,而不是通过检测得出地址的。只有很少一部分的通用硬件是固定映射在某些地址上。

回到你的问题中,在图中的8255A硬件的各个端口是由它自己在地址总线上监听属于自己的地址,而并不是微处理器内部反馈给它。

题外话: 电脑上的驱动程序就是为了初始化和运行硬件用的,因为有时候操作系统开发商并不知道该硬件会被映射到哪里去,还有该硬件的特性。

有什么不明白可以继续追问
追问
所以我问它监听的地址是怎么根据图中地址总线信息计算出来的。比如端口A的地址FF98是怎么得出的?
谢谢
追答
图里标的不是很细,只能初略猜一下:

--G1,G2必须为1才能激活地址解析器的输出Y0-Y7;
--A5,和AEN相连组成G2B,A6为G2A;A5和AEN,和A6,只要两者之间有一者结果是1,则G2为1
--A,B,C端控制输出至Y0-Y7的哪一个(图中没标),ABC总共3位刚好可以组成7个数(111二进制),所以估算出当C,B为0,A为1时,8255A的CS会为1,从而激活8255A(前提是G1,G2都是1)

那把上面的二进制列出来就是:1111 1111 1XX1 XXXX,十六进制为FF90(X为不确定位,假设X都为0),所以得出FF90-FFFF为该地址解析器的接受空间

地址解析器虽然有位A2-A15,但位A0,A1是在8255A上的,这两个位可以组成4个不同的输出,0,1,2,3;8255A通过解析这4个不同的输入来确定到底是哪个端口是要被写或读。(上网查了下8255A实际上是有A,B,C端口和控制端口的,对应的就是那4个输出)
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
光电编码器,是一种通过光电转换将输出轴上的机械几何位移量转换成脉冲或数字量的传感器。光电编码器每转输出60(我们用老板没有说)个脉冲,五线制。其中两根为电源线,三根为脉冲线(A相、B相、Z)。电源的工作电压为 (+5~+24V)直流电源。光... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式