在 MIPS 处理器中,I/O 地址空间 0xffff0000 到 0xffffffff 保留用于内存映射 I/O。假设一个 I/O 设备分别需要 3、1 和 4 个 32 位字用于控制、状态和数据寄存器。可以支持多少个I/O设备?
正确答案是 2048,但我得到了 8192。
我的思考过程: 减去两个空格即可检索所需的内存量 ffffffff - ffff0000 = 0000ffff = 65535 位 = 2^16 - 1 然后除以 32 位并乘以 8,但这显然是错误的。
有人可以指导我完成这些步骤以获得正确答案吗?谢谢
最佳答案
每个设备使用:(3+1+4) * 32 位 = 8 * 4 字节 = 32 字节
可用内存区域以字节为单位,而不是位:2^16 = 65536 字节
因此,您有:65536 字节/32 字节 = 2048
。
因此支持 2048 设备。
关于cpu-architecture - MIPS 处理器 I/O 设备支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36255051/