注册 登录
编程论坛 汇编论坛

[求助]8255端口地址的问题?

hwbnet 发布于 2005-01-23 14:41, 9641 次点击
PPICS有效时,A9A8A7A6A5=00011,所以该8255的I/O地址范围是60H~7FH。
以上是 计算机接口技术 书中的,请问地址范围是怎么算出来的?
19 回复
#2
live412005-01-23 15:40
它书上应该有说,它有命令8位,icw和ocw决定的,不过我没看懂你书上说的。
#3
hwbnet2005-01-23 19:59
live41:端口地址是怎么来的?程序分配的么?
#4
live412005-01-23 20:08
并行接口由数据口、状态口和控制口等3个地址组成,典型的数据口地址是278、378、3bc,而状态和控制口的地址在数据口的基础上加1和加2。
#5
live412005-01-23 20:13
这个被你问到我了,因为我书上题目都是这样出的,假设8255A的口A、B、C的I/O地址为FFF8H、FFFAH、FFFCH,控制端口的地址为FFFEH,一般都是题目给定的,我倒不知道到底实际操作中地址怎么得到。

唉,社会主义教学的优越性,就是理论行头,实践殿后。
#6
live412005-01-23 20:18
PPICS 是什么端口?我书上的是8255A,老实说,书上说得很模糊。我估计地址是靠开机时进入内存来判断吧,关键的地址其实就是控制地址,但是书上是给定的,没有描述怎么确定。
#7
hwbnet2005-01-24 18:58
PPICS原文中上面有一横杠,是片选信号输入端。
你认为用汇编语言编程要学习哪些相关知识?
#8
live412005-01-24 19:05
我知道,cs就是片选chip select的意思,但是I是input,但是pp是什么?

呵呵,汇编语言就是要学习汇编知识(废话)。。。
要学寄存器寻址的原理,反正要先了解CPU、寄存器、内存的运作原理,然后开始看语法,不过语法比较难懂,我都没懂,然后就是看DOS和BIOS的中断,看我签名就知道,我看得脑都中断了。
#9
hwbnet2005-01-25 13:56
pp是什么我也不知道,书上没有解释。
书上面说汇编语言是直接控制硬件的语言,但是硬件方面几乎没介绍,如图形方面说了有颜色寄存器和调色板寄存器,结果用的时候就说用BIOS中断调用,真是郁闷。我现在正在找这方面的书,邮购了2本计算机接口方面的书,正在学,感觉实用的不多。你有没有这方面的书,介绍几本看看。
#10
aries_gy2005-01-25 17:08
看对应端口地址。假设A15-A0为0010 0111 1110 0111
则对应选通的口地址为: 27E7H
对应端口选择(好象是A2和A3,具体查阅手册)00->A,01->B,10->C,11->控制口,
就 这样算出来的
#11
flyerman2005-01-25 17:23
是这样算的:A9A8A7A6A5=00011时,选中8255,则最小地址为01100000,即60H,最大地址是01111111,即7FH,所以地址为60H到7FH
#12
hwbnet2005-01-25 22:12
[QUOTE] 是这样算的:A9A8A7A6A5=00011时,选中8255,则最小地址为01100000,即60H,最大地址是01111111,即7FH,所以地址为60H到7FH [/QUOTE] 为什么最小地址是01100000?具体说一下好么?谢谢!
#13
hwbnet2005-01-25 22:14
[QUOTE]看对应端口地址。假设A15-A0为0010 0111 1110 0111
则对应选通的口地址为: 27E7H
对应端口选择(好象是A2和A3,具体查阅手册)00->A,01->B,10->C,11->控制口,
就 这样算出来的 [/QUOTE]
查阅什么手册?
#14
flyerman2005-01-26 16:11
很简单啊,当其余各位均为0的时候,就得到最小地址,其余各位均为1时,得到最大地址
#15
hwbnet2005-01-26 19:39
flyerman:A9~A5这几位的表示端口地址的么?
#16
qianggengqiang2005-04-25 12:35
地址的计算方法是芯片内的微程序或硬件定义的
如果说的话.也只能说以下定义
当cs信号是0时,注意Intel 的芯片中都是0电压有效的,A8和A9,A7信号是0,同时A6A5是1时,8255A选中,它通过A4-A0,来选择端口
这是你会发现它的端口地址范围是1F,但实际上8255A没有使用A4-A2,请注意我们说的是
8255A,不是扩展的8255芯片,就是说它的地址范围是60H-63H
#17
qianggengqiang2005-04-25 12:39
地址的计算方法是芯片内的微程序或硬件定义的 如果说的话.也只能说以下定义 当cs信号是0时,注意Intel 的芯片中都是0电压有效的,A8和A9,A7信号是0,同时A6A5是1时,8255A选中,它通过A4-A0,来选择端口 这是你会发现它的端口地址范围是1F,但实际上8255A没有使用A4-A2,请注意我们说的是 8255A,不是扩展的8255芯片,就是说它的地址范围是60H-63H
#18
hwbnet2005-04-25 23:14
那要怎样测试未知设备用的是什么硬件呢?
#19
星辰砂2005-12-27 20:02
地址线联法算出地址
#20
hjhycy2006-01-03 15:25
A9到A5是表示8255A的A口的高5位

如果省略了一般就是0。这里的低3位就应该是0
1