【接口技术】总线课堂习题

1:CPU在执行OUT DX, AL指令时,()寄存器的内容送到地址总线上

A,DL

B,DX

C,AX

D,DL

解答:B

out指令是把AL的数据输出到DX的端口,因此AL寄存器的内容送到数据总线上,DX寄存器的内容送到地址总线上,即要把DX的内容送到地址总线上以选择端口,然后再传送AX的内容。此题需要看清楚是哪条总线。

2:8086在分别执行“MOV AX,[BX]”和“IN AX,DX”指令时,8086的()引脚电平不同?

A,M/IO

B,RD

C,WR

D,MN/MX

解答:A

in/out指令用于cpu和接口之间传输,mov指令用于cpu内部传输,或cpu和内存之间传输。因此区别在于I/O和Memory是否打通。

3:给总线号为5的PCI总线的3号扩展槽 4号功能设备的基址寄存器4分配256个存储器地址空间。

解答:结果如下图。

【接口技术】总线课堂习题_第1张图片

【接口技术】总线课堂习题_第2张图片

总线号为5:由于有8位,因此是00000101

3号扩展槽:即设备号,由于有5位,因此是00011

4号功能设备:即功能号,由于有3位,因此是100

基址寄存器4:20H地址开始,即寄存器号,由于有6位,因此是10 0000

【接口技术】总线课堂习题_第3张图片

同时,使能位是1,保留为是000 0000,末尾是00,可以获得一个二进制数

因此,向EAX输入的为80051C80 H

【接口技术】总线课堂习题_第4张图片

分配256个存储器地址空间:由于是存储空间,所以使用存储空间指针,末尾为0

同时2^8=256,因此从右往左数的第8位为1,且左边的所有位均为1

因此,向EAX输入的为0FFFFFF00 H

【接口技术】总线课堂习题_第5张图片

I/O空间分配如上图,举一反三可以做出I/O空间的题目

配置地址端口寄存器(I/O地址为0CF8H~0CFBH)

配置数据端口寄存器(I/O地址为0CFCH~0CFFH)

(开头是字母,则加一个0进行区别)

综上所述,总体指令如下:(同时可以看出DX接受16位,EAX接受32位

MOV DX,0CF8H

(将0CF8 H端口送入DX)

MOV EAX,80051C80 H

(将功能选择送入EAX)

OUT DX,EAX

(将EAX中的数据输出到DX的端口,即把功能选择送入配置地址端口寄存器)

MOV DX,OCFCH

(将0CFC H端口送入DX)

MOV EAX,0FFFFFF00 H

(将分配选择送入EAX)

OUT DX,EAX

(将EAX中的数据输出到DX的端口,即把分配选择送入配送数据端口寄存器)

你可能感兴趣的:(接口技术,接口技术)