陕西科技大学科目期末考试复习计算机接口技术复习 - 图文

更新时间:2024-05-07 00:52:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

A、HLDA B、INTR C、HOLD D、INTA

微机原理习题

一、选择填空

1、CPU执行OUT DX ,AL指令时,( )的值输出到数据总线上。

A、AL寄存器 B、AX寄存器 C、DL寄存器 D、DX寄存器 2、连接主机与外设间的电路称为( )。

A、接口 B、端口 C、数字电路 D、转换电路 3、地址译码的作用是( )。

A、设计接口 B、区分不同外设 C、接至地址总线 D、向外设输出数据 4、中断控制器8259可管理( )。

A、非屏蔽中断 B、指令中断 C、外部中断 D、可屏蔽中断 5、对INT N指令,其中断向量存放在内存从( )开始的地址中。 A、DS*10H+N*4 B、DS*10H+N C、0*10H+N*4 D、0*10H+N 6、8259的中断服务寄存器ISR的某一位如果置1,则表示( )。

A、8259中断服务故障 B、CPU正在执行中断服务程序 C、外部设备可以请求中断服务 D、中断服务程序刚执行完毕 7、8086/8088CPU内部有一个始终指向堆栈顶部的地址指针是( )。

A、SP

B、IP

C、BP D、BX

14、DMA数据传送,是由( )控制的。

A、硬件控制器

B、程序

C、CPU D、外设

15、CPU与外设交换信息时,是通过( )传送外设控制和外设状态信息的。 A、数据总线

B、地址总线

C、控制总线 D、局部总线

16、8086执行OUT DX ,AL 指令时,( )的值输出到地址总线上。

A、AL B、AX C、DL D、DX

R有效时要求17、IO 8086的( )引脚同时输出低电平。

M/IO 和 RD A、IN和OUT B、 C、ALE和 D、地址和数据 RD

18、CPU对单步中断的响应,必须根据( )标志位的状态来决定是否响应。

A、IF B、DF C、TF D、ZF 19、中断向量表中存放的是( )。

A、中断类型码 B、中断服务程序 C、中断向量码 D、中断服务程序入口地址 20、中断控制器8259中没有( )寄存器。

A、中断服务 B、中断屏蔽 C、中断响应 D、中断请求

21、如果向8259写入的ICW2(设置中断类型码)为20H,则IR1引脚所对应的中断类型码为( )。

A、21H B、22H C、23H D、24H 22、由8088CPU组成的PC机的数据线是( )。

A、 8条单向线 B、 16条单向线 C、 8条双向线 D、 16条双向线 23、设有14个按键组成键盘阵列,识别这14个按键至少需要有( )根口线。 A、6根 B、7根 C、8根 D、14根

24、8086/8088CPU内部有一个指向下一个指令字节的地址指针寄存器是( )。

A、BIU B、IP

C、CS

D、SP

8、8086/8088CPU内部地址指针是( )。

A、20位 B、8位 C、16位 D、24位

9、8086存储段是存储器的一个逻辑单位,其长度可达( )字节

A、16K

B、64K

C、640K D、1M

10、对于“未对准好”字,8086CPU需要( )个总线周期完成对该字的访问。

A、1 B、2 C、3 D、4

11、8086/8088能寻址内部存储器的最大地址范围为( )。

A、64K

B、512K

C、1M

D、10M

12、除法出错是属于( )中断。

A、线路故障 B、内部 C、INTO D、单步

13、中断传送方式下,当外部需要输入输出数据,向CPU发出中断请求信号,由接口电路使( )信号有效,引起中断响应。

25、用户可以单元为单位进行读写的存贮器是( )。

A、 RAM B、 ROM C、 软盘 D、 硬盘 26.集成度最高的存贮线路是( )态线路。

共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

A、六管静 B、 六管动 C、 四管动 D、 单管动 27.EPROM2732有4K个地址单元。当从F0000H开始分配地址,它的末地址为( ) A、F03FF B、F07FF C、F0FFF D、F1000 28.响应NMI请求的必要条件是( )。 A、 IF=1 B、 IF=0 C、 一条指令结束 D、 无INTR请求 29.传送数据时,占用CPU时间最长的传送方式是( )。 A、 查询 B、 中断 C、 DMA D、 通道 30.DMA数据传送,是由( )控制的。 A、硬件控制器 B、程序 C、CPU D、 8255 控制器中的中断服务寄存器(ISR) 42.8086/8088中状态标志有( )个 A、3 B、4 C、5 D、6 43.8086/8088可用于间接寻址的寄存器有( ). A、2 B、4 C、6 D、8 44.在8086/8088中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU在总线发出( )信息. A、数据 B、状态 C、地址 D、其他 45.8086/8088的中断向量表( ) A、用于存放中断类型号 B、用于存放中断服务程序入口地址 C、是中断服务程序的入口 D、是中断服务程序的返回地址 46.计算机的存储器采用分级存储体系的主要目的是()。 A、 便于读写数据 B、减小机箱的体积 C、便于系统升级 D、解决存储容量、价格和存取速度之间的矛盾 47、在机器内部操作中,CPU与存贮器之间信息交换使用的是( )。 A.逻辑地址 B.物理地址 C.有效地址 D.相对地址 48、当执行指令ADD AX,BX后,若AX的内容为2BA0H,设置的奇偶标志位PF=1,下面的叙述正确的是( )。 A.表示结果中含1的个数为偶数 B.表示结果中含1的个数为奇数 C.表示该数为偶数 D.表示结果中低八位含1的个数为偶数 49、假设VAR为变量,指令MOV BX,OFFSET VAR源操作数的寻址方式是( )。 A.直接寻址 B.间接寻址 C.立即数寻址 D.存贮器寻址 50、完成同指令XCHG AX,BX相同功能的指令或指令序列是( )。 A.MOV AX,BX B.MOV BX,AX C.PUSH AX D.MOV CX,AX POP BX MOV AX,BX MOV BX,CX 51、已知字变量buffer等于1234h,它所在的偏移地址为5678h,执行下列指令后ax=( )。 mov ax,buffer lea ax,buffer A.1234h B.5678h C.3412h D.7856h 52、测试BL寄存器内容是否与数据4FH相等, 若相等则转NEXT处执行,可实现的方法是( )。 A. TEST BL,4FH B. XOR BL,4FH JZ NEXT JZ NEXT C. AND BL,4FH D. OR BL,4FH JZ NEXT JZ NEXT 53、寄存器BX和DX中存放有32位二进制数,其中BX中放高16位,下列程序段完成对这32位数扩大4倍的功能,那么该程序段中方框里应填的语句是( )。 MOV CX,2 LOP:SHL DX,1 31.在DMA方式下,CPU与总线的关系是( C ). A、只能控制数据总线 B、只能控制地址总线 C、成隔离状态 D、成短接状态 32.中断向量的地址是(C ). A、子程序入口地址 B、中断服务程序入口地址 C、存放中断服务程序入口地址的地址 D、中断程序的第一行的地址 33.PC机中为使工作于一般全嵌套方式的8259中断控制器能接受下一个中断请求,在中断服务程序结束处应(C) A、执行IRET指令 B、执行POP指令 C、发送EOI命令 D、发送OCW3命令 34.冯 诺依曼机工作方式的基本特点是(B ) A、多指令流单数据流 B、按地址访问并顺序执行指令 C、堆栈操作 D、存贮器按内容选择地址 35.8086微处理器可寻址访问的最大I/O空间为( B ) A、1KB B、64KB C、640KB D、1MB 36.Pc机数据总线信号的状态是、(C ). A、单向双态 B、单向三态 C、双向三态 D、双向双态 37.存储器是计算机系统的记忆设备,它主要用来(C) A、存放数据 B、存放程序 C、存放数据和程序 D、存放微程序 38.I/O与主机信息的交换采用中断方式的特点是( B ) A、CPU与设备串行工作,传送与主程序串行工作 B、Cpu与设备并行工作,传送与主程序串行正作 C、CPU与设备并行工作,传送与主程序并行工作. D、以上都不对 39.在I/O传送方式中,哪种传送可提高系统的工作效率(C ) A、条件传送 B、查询传送 C、中断传送 D、前三项均可 40.(B )是以CPU为核心,加上存储器,I/O接口和系统总线构成的. A、微处理器 B、微型计算机 C、微型计算机系统 D、计算机 41.PC机中确定硬中断服务程序的入口地址是(C) A、主程序中的调用指令 B、主程序中的转移指令 C、中断控制器发出的类型码 D、中断共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

LOOP LOP

A. ROL BX,1 B. ROR BX,1 C. RCL BX,1 D. RCR BX,1 54、当一个带符号数大于0FBH时程序转移, 需选用的条件转移指令是( )。 A. JLE B. JNL C. JNLE D. JL 55、使用DOS功能调用时,子程序编号应放在( )寄存器中。

A.AL B.AH C.AX D.任意指定

56、8086CPU在进行I/O读操作时,M/IO和DT/R必须是( )。

A.0 0 B.0 1 C. 1 0 D.1 1 57、8086/8088执行一个总线周期是在( )之后插入TW。

A.T1 B.T2 C.T3 D.T4 58、若用存贮芯片(32K×8)构成8086的存贮器系统要用( )。

A.8片 B.16片 C.32片 D.64片 59、除法出错是属于( )中断。

A.线路故障 B.内部中断 C.INTO D.单步中断

60、8255A工作于方式1输出方式,A口/B口与外设之间的控制状态联络信号是( )。 A.STB与IBF B.IBF与ACK C.OBF与ACK D.OBF与STB 61、8253 是可编程定时、计数器芯片,它内部有( )。

A.三个定时器 B.四个定时器 C.二个计数器 D.四个计数器 62、8086 CPU的NMI引脚上输入的信号是( )

A.可屏蔽中断请求 B.非屏蔽中断请求 C.中断相应 D.总线请求 63、8086 CPU在( )时刻采样READY信号决定是否插入等待周期。

A.T3下降沿 B.T3上升沿 C.T2下降沿 D.T2上升沿 64、8288的作用是( )。

A.地址锁存器 B.数据收发器 C.时钟信号源 D.总线控制器 65、采用两片可编程中断控制器级联使用,可以使CPU的可屏蔽中断扩大到( )。 A.15级 B.16级 C.32级 D.64级 66、PCI总线是( )位总线。

A.16 B.16/32 C.32 D.32/64

67、微型计算机是以大规模、超大规模集成电路为主要部件,以集成了控制器和( )的微处理器为核心,所构造出的计算机

A、存贮器 B、寄存器 C、运算器 D、计数器

68、单片机内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、并行接口、串行接口,有的芯片还集成了( )等

A、存贮器 B、运算器 C、定时器 D、微处理器 69、8088典型的总线周期由( )个T组成。 A、4 B、5 C、6 D、8

70、当8088进行读写存储器或I/O接口时,如果存储器或I/O接口无法满足CPU的读写时序(来不及提供或读取数据时),需要CPU插入( )

A、T3 B、T4 C、Tw D、Ti

71、如果8088的CLK引脚接5MHz的时钟信号,那么每个T状态的持续时间为( ).

A、200ns B、300ns C、 200ms D、300ms 72、PC机中确定可屏蔽中断服务程序的入口地址是( )

A、主程序中的调用指令 B、主程序中的转移指令

C、中断控制器发出的类型码 D、中断控制器中的中断服务寄存器(ISR) 73、在PC机上,CPU响应NMI请求时,中断类型号( )。

A、由8259A提供 B、由8255A提供 C、规定为2 D、规定为3 74、存储器是计算机系统的记忆设备,它主要用来( )

A、存放数据 B、存放程序 C、存放数据和程序 D、存放微程序 75、集成度最高的存贮线路是( )态线路。

A、六管静 B、 六管动 C、 四管动 D、 单管动

76、存储器( )信号通常与CPU地址总线的高位地址线相关联,说明该存储器芯片是否被选

中正常工作

A、 CS B、D0 C、OE D、 WE

77、存储器可以采用3种外译码方式,其中采用( )方式可以避免地址重复。

A、全译码 B、部分译码 C、线选译码 D、地址译码 78、除法出错是属于( )中断。

A、线路故障 B、内部 C、INTO D、单步

79、( )在任何一个总线周期的T1状态输出有效电平,以表示当前在地址/数据复用总线上输

出的是地址信号。 A、DEN B、ALE C、RESET D、READY

80、DMA数据传送,是由( )控制的。

A、硬件控制器 B、程序 C、CPU D、外设 81、在DMA方式下,CPU与总线的关系是( ).

A、只能控制数据总线 B、只能控制地址总线 C、成隔离状态 D、成短接状态 82.PC机数据总线信号的状态是( ).

A、单向双态 B、单向三态 C、双向三态 D、双向双态 83. 8086系统中,堆栈的操作( )。

A、只能是字节操作 操作

84.CPU对单步中断的响应,必须根据( )标志位的状态来决定是否响应。

B、只能是字操作

C、可以是字节或字操作 D、只能是串

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

A、 IF B、 OF C、DF D、 TF

85.CPU寻址外设端口有两种访问方式,I/O指令寻址和( )。

A、 存储器映像 B、 中断 C、 DMA D、 通道 86.在I/O传送方式中,哪种传送可提高系统的工作效率( ) A、条件传送 B、查询传送 C、中断传送 D、前三项均可 二、 判断改错题

(判断正误,将正确的划上“√”,错误的划上“×”,并改正错误。) 1、 在PC机上,CPU响应NMI请求时,类型号由8259提供 。 2、 8086系统中,堆栈的操作可以是字节或字操作。 3、 为8088CPU提供系统地址总线需要两个8286。

4、 当8255的PA口方式1,PB口方式0时,其PC口可用作一个4位I/O。

2. I/O传送数据时,占用CPU时间最长的传送方式是 ② 传送方式。 3. 8086/8088CPU内部有一个始终指向堆栈顶部的地址指针是 ③ 。

4. EPROM2732有4K个地址单元。当从F0000H开始分配地址,它的末地址为 ④ 5. 三态引脚除正常的高、低电平外,还能输出 ⑤ . 状态。

6. 8088读取指令长度为3B的指令“MOV AX ,[2000H]”需要 ⑥ 个总线周期,执行时需

要 ⑦ 个总线周期。 7. 组成16KB存储空间,用SRAM 2114(1K×4)需要 ⑧ 个芯片。

8. 在一个针对存储器的译码系统中,如果有6个地址线未参与译码,那么每个存储单元会同

时拥有 ⑨ 个地址

9. 指令“MOV AX ,[BX+SI+2000H]”源操作数是 ⑩ 寻址方式。

10、用寄存器BX和DI的基址变址寻址方式把存贮器中的一个字节与AL寄存器的内容相加,结

5、 已知某数的原码是00001000,则其反码是11110111。 果送入AL寄存器中。该指令是 。 6、 EPROM2732有4K个地址单元。全译码方式,当从F0000H开始分配地址,它的末地址为F07FFH。 11、已知 指令 MOV AX,0 ,SUB AX,AX ,CMP AX,AX ,OR AX,AX。 能使AX和CF同时为7、 响应NMI请求的必要条件是IF=1。

8、 CPU寻址外设端口有两种访问方式,I/O指令寻址和存储器映像。

9、 DEN在任何一个总线周期的T1状态输出有效电平,以表示当前在地址/数据复用总线上输出

的是地址信号。 10、 11、 12、 13、 14、

CPU对单步中断的响应,必须根据DF标志位的状态来决定是否响应。

8086有一个16位的标志寄存器,它包含6个状态标志位和3个控制标志位。 一个总线周期由1个或若干个指令周期组成。

中断向量的地址是存放中断服务程序入口地址的地址。

四、分析题

1.MOV AX,0BC5FH MOV BX,0C0FBH AND AX,BX

AND AX,BX

上述程序段运行后,AX= ,BX= ,CF=_____

2. A DB 0F8H B DB 3 DUP(?) ┇

LEA DI,B MOV CX,3 MOV AL,A LOP:SAR AL,1

零的指令是 。

12、若一个数据块在内存中的起始地址为80A0H:DFF0H,则这个数据块的起始物理地址为 。

13、8086系统可寻址I/O端口的最大地址为 。 14、8086响应INTR请求需要执行 总线响应周期。 15、保护断点就是保存 。

15、 中断传送方式下,当外部需要输入输出数据,向CPU发出中断请求信号,由接口电路

使HLDA信号有效,引起中断响应。 16、 17、

一条指令结束是响应NMI请求的必要条件。 中断控制器8259A可管理软硬中断。

18、CPU与外设交换信息时是通过控制总线传送外设控制和外设状态信息的。 三、填空题

1. 8088微处理器可寻址访问的最大I/O空间为 ① 。

共 8 页,第 !语法错误,4 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,4 页

MOV [DI],AL INC DI LOOP LOP 上述程序段运行后,从B单元开始依次存放的数据是多少? 3. 已知BUF开始的数据区中存放有10个大、小写字母,下面程序段完成的功能是什么? MOV CX,10 LEA BX,BUF K2: MOV AL,[BX] CMP AL,'Z' JBE K1 SUB AL,20H MOV [BX],AL K1: INC BX LOOP K2 ┇ 4、 MOV AX, 0ABCDH MOV BX, 0CDEFH PUSH AX PUSH BX POP AX POP BX 上述程序段执行后(AX)=____,(BX)=_____ 5、已知数据段: DATA SEGMENT STR1 DB 12H,-64 STR2 DB 2 DUP(‘B’,9) COUNT EQU $-STR2 STR4 DW STR3 DATA ENDS aadp mov bl,ah shl ah,1 shl ah,1 add bl,ah add al,bl mov ah,0 pop bx ret endp 7、编写一个程序段,在DX低3位全为1时,使AX=-1;否则使AX=1。 8、给下面程序段加上合适的指令,该程序段使一个50个字节元素的数组,其首地址为array,每个元素减2(不考虑溢出或借位)存于原处。 ① . mov si,0 again: sub array[si],2 ② . loop again 五、指出下列标志位的含义 (1) CF (2) OF (3) AF (4) ZF (5) DF 六、 (1)若STR是字符串的首地址,指出下列程序的功能,并将语句加上注解。 LEA BX , STR MOV CX , 20 LP : CMP [BX] , ‘&’ JNZ NEXT MOV [BX] , ‘$’ NEXT : INC BX LOOP LP HLT (2)指出下列程序的功能 DATA SEGMENT STRIN DB ‘??*’ COUNT DW ? DATA ENDS STACK SEGMENT PARA STACK ‘STACK’ 共 8 页,第 !语法错误,5 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,5 页 STR3 DB COUNT 画出该数据段的存储形式。 6、说出该子程序实现什么功能。 aadp proc push bx shl ah,1

DB 100 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS : CODE , DS : DATA , SS : STACK START : MOV AX , DATA MOV DS , AX MOV BX , OFFSET STRIN MOV AX , 0 MOV CX , AX LP : MOV AL , [BX] CMP AL , ‘*’ JE DONE INC CX INC BX JMP LP DONE : MOV COUNT , CX MOV AH , 4CH INT 21H CODE ENDS END START 七、 已知电路图如图1所示: A1A0210H –217HIORIOWCSRDWR8255PA0PA1PA2PA3PA4PA5PA6PA7D0R*8 有关程序段如下: MAIN PROC FAR PUSH DS XOR AX , AX PUSH AX MOVE AL , 8BH MOV DX ,213H OUT DX , AL KEYIN :MOV DX ,212H IN AL ,DX CMP AL ,0FFH JE KEYIN CMP AL ,0FCH JE EXIT MOV DX ,210H OUT DX ,AL JMP KEYIN 。+5V。。。。。。。。D7EXIT : RET MAIN ENDP 回答问题: 1)根据电路的接法,8255的PC口应设为输入方式还是输出方式? 2)根据电路的接法,8255的PC口地址是什么? B0 B1 B2 B3 B4 B5 B6 B7D7至DBD0A1A0PC7PC6PC5PC4PC3PC2PC1PC0S7。+5VR*8 3)结合程序,说明本电路完成什么功能? 4)如果按键接在PB口上,为完成相同功能,应如何修改程序? 共 8 页,第 !语法错误,6 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,6 页 。。。。。。。。S0

5)如果想按下S7键退出程序,则应如何修改程序?

6)如果想按下按键Si后使相应的发光二极管Di发光,而其余发光二极管熄灭,则应如何修改程序?

八、8255A的工作方式控制字和C口的按位置位/复位控制字有何差别?若将C口的PC2引脚输出高电平(置位),假设8255A控制口地址是303H,程序段应是怎样的? 提示:8255A编程摘要 工作方式控制字: 1、控制命令字

1D6D5A组B组D4D3D2D1D0C口低4位,1:输入,0:输出B口,1:输入,0:输出方式选择:0:方式0,1:方式1C口高4位,1:输入,0:输出 A口,1:输入,0:输出

方式选择:00:方式0,01:方式1,1×:方式2 2、位设置控制字

0D6D5无关位D3D2D100001001201030114100510161107111D4D3D2D1D0

1:置位,0:复位

共 8 页,第 !语法错误,7 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,7 页

九、 假设系统扩展一片8255A供用户使用,其A、B、C和控制口地址依次为9000H、9001H、9002H、9003H,请设计一个用8255A 与打印机接口的电路连接图(只须画出打印机与8255A的连接部分)并给出8255A初始化程序段和输出打印程序段及相应注释。 8255A方式控制字格式: 1 D6 D5 D4 D3 D2 D1 D0

特征位 0 0 方式0 0 1 方式1 1 ×方式2

A组方式

B组方式

A口选择 C口上半部

C口下半部

1 输入

B口选择

0 输出 1 输入

0 输出 0 方式0

1 输入 0 输出

1 方式1 1 输入 0 输出

8255的通道C置复位控制字定义如下:

0 制。

X X X D3 D2 D1 D0 D7=0—C通道置复位标志位,D6D5D4—无效,D3D2D1—通道C的位选择,D0=1/0—C口置/复位控

方式1输出,端口C状态字: D7

D6

D5 I/O

D4 I/O

D3 INTRA

D2 INTEB

D1 OBFB D0 INTRB

INTEA

OBFA

打印机接口的信号与时序:

DATA0~7

STROBE BUSY ACK

共 8 页,第 !语法错误,8 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,8 页

微机原理习题参考答案 一、 选择填空题 1、A 2、A 3、B 4、D 5、C 6、B 7、A 8、C 9、B 10、B 11、C 12、B 13、B 14、A 15、A 16、D 17、B 18、C 19、D 20、C 21、A 22、C 23、C 24、B 25、A 26、D 27、C 28、C 29、A 30、A 31C 33、C 41、C 34、B 35、B 36、C 37、C 38、B 42、D 43、B 32C 40、B 39、C 1.64K 2. 查询 3. SP 4. F0FFFH 5. 高阻 6. 3 7. 2 8. 32 9. 64 10. 相对基址变址 11、add al,[bx+di] 12、sub ax,ax 13、8E9F0H 14、0FFFF H 15、2个 16、当前CS 、IP的值 44、C 45、B 46、D 47、B 48、D 49、C 50、D 51、 B 52、B 53、C 54、 C 55、B 56、A 57、C 58、C 59、B 60、C 61、A 62、C 63、A 64、D 65、A 66、D 67、C 68、 C 69、A 70、C 71、A 72、C 73、C 74、C 75、D 76、A 77、A 78、B 79、四、分析题 B 80、A 81、C 82、C 83、B 84、D 85、A 86、C 1、AX=805BH,BX=0C0FBH,CF=0 2、依次存放FCH、FEH、FFH 二、 判断改错题 3、小写字母转换成大写字母 1、× 类型号由8259提供==》类型号为2 4、AX=CDEFH,BX=ABCDH 2、× 可以是字节或字操作==》只能是字操作 3、× 需要两个8286==》三个 8282 4、√ 5、× X的反码是11110111==》X的反码是00001000 6、× F07FFH ==》F0FFFH 7、× IF=1 ==》一条指令结束(或 NMI ==> INTR) 8、√ 9、× DEN ==》 ALE 10、× DF ==》TF 11、×,8253的方式控制中,有一项计数锁存操作,计数锁存是为了方便读取计数值,并不影响对计数器的计数工作。 12、√ 13、×,一个指令周期由1个或若干个总线周期组成。 14、√ 15、× HLDA ==》 INTR 16、√ 17、× 软硬中断==》可屏蔽中断 18、× 控制总线==》数据总线 三、填空题 6、该子程序实现AL←AH×10+AL,AH←0。 7、 and dx,7 Sub dx,7 jz next mov ax,1 jmp done next: mov ax,-1 5、 共 8 页,第 !语法错误,9 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,9 页

done: ? 8、 ① mov cx,50 ② inc si

五、 (1) 进位标志。若运算结果的最高位产生一个进位或借位,则CF=1,否则CF=0。 (2) 溢出标志。若在算术运算中带符号数的运算结果,当字节运算时大于+127或小于-128;字运算时大于+32767或小于-32768,则OF=1,否则OF=0。 (3) 辅助进位标志。若在字节操作时,由低半字节向高半字节有进位或借位;或在字操作时,由低位字节向高位字节有进位或借位,则AF=1,否则AF=0。 (4) 零标志。若运算结果为0,则ZF=1,否则ZF=0。 (5) 方向标志。若用指令置DF=1,则串操作指令就为自动减量指令,也就是从高地址向低地址处理串;若DF=0,则串操作指令就为自动增量指令,也就是从低地址向高地址处理串。 六、 (1) 程序功能:将字符串STR(长度20字节)中所有’&’用’$’代替。 LEA BX , STR ;置地址指针 MOV CX , 20 ;置计数器初值 LP : CMP [BX] , ‘&’ ;取字符与’&’比较 JNZ NEXT ;不是’&’转NEXT MOV [BX] , ‘$’ ;是’&’则用’$’替换 NEXT : INC BX ;地址加1 LOOP LP ;CX-1不为0继续 HLT (2)从STRIN单元开始有一字符串,程序求以’*’作为结束标志字符串的长度,存入COUNT单元。 七、 1)PC口应设为输入方式。 2)8255的PC口地址为212H和216H。 3)检查按键,若同时按下S1和S0键,则退出程序,否则将读入开关状态所对应的数字量从PA口送出显示。 4)将程序第8行改为: KEYIN : MOV DX , 211H 5)将程序第12行改为: CMP AL , 7FH 6)在程序的第14、15行之间加一条 NOT AL 指令。 八、 工作方式控制字是对8255A的三个端口的工作方式及功能进行说明,即进行初始化,写在程序的开头,控制字的最高位D7=1。按位置位/复位控制字只对C口某一位(不能同时对几位)输出高电平(置位)或低电平(复位)进行控制(对输入无作用),控制字的最高位D7=0。 PC2置位程序段: MOV DX , 303H MOV AL , 05H OUT DX , AL 九 的 解答:8255A 与打印机接口的电路连接图 ;用8255A方式0与打印机接口 ;8255A的初始化 mov dx,9003h ;控制端口地址:9003H mov al,10000001B ;方式控制字:91H out dx,al ;A端口方式0输出,C端口上输出、下输入 mov al,00001111B;端口C的复位置位控制字,使PC7=1 out dx,al ;打印子程序:查询 printc proc push ax ;读取端口C push dx prn: mov dx,9002h in al,dx PC2 BUSY 8255A 打印机 PA0~PA7 PC7 DATA0~7 STROBE ;查询打印机状态 and al,04h ;PC2=BUSY=0? jnz prn ;PC2=1,打印机忙,则循环等待 mov dx,9000h ;PC2=0,打印机不忙,则输出数据 mov al,ah out dx,al ;将打印数据从端口A输出 mov dx,9003h ;从PC7送出控制低脉冲 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

mov al,00001110B out dx,al nop mov al,00001111B ;置STROBE*=0 。 三、选择题 1、在计算机内部,一切信息的存取、处理和传送都是以 D 形式进行的。 A)EBCDIC码 B)ASCII码 C)十六进制编码 D)二进制编码 2、与十进制数56等值的二进制数是 A 。 A)111000 B)111001 C)101111 D)110110 3、十进制数59转换成八进制数是 A 。 A)73Q B)37Q C)59Q D)112Q 4、与十进制数58.75等值的十六进制数是 B 。 A)A3.CH B)3A.CH C)3A.23H D)C.3AH 5、二进制数1101.01转换成十进制数是 C 。 A)17.256 B)13.5 C)13.25 D)17.5 6、二进制数111010.11转换成十六进制数是 B 。 A)3ACH B)3A.CH C)3A3H D)3A.3H 7、十六进制数1CB.D8转换成二进制数是 D 。 A)110001011.11001 B)111101011.11101 C)111101011.11101 D)111001011.11011 8、将十六进制数FF.1转换成十进制数是 C 。 A)255.625 B)2501625 C)255.0625 D)250.0625 9、十进制正数43的八位二进制原码 B 。 A)00110101 B)00101011 C)10110101 D)10101011 10、十进制正数38的八位二进制补码是 D 。 A)00011001 B)10100110 C)10011001 D)00100110 四、是非判断题 1、在第三代计算机期间出现了操作系统。 ( √ ) 2、对于种类不同的计算机,其机器指令系统都是相同的。(× ) 3、在计算机中,数据单位bit的意思是字节。 ( × ) 4、八进制数的基数为8,因此在八进制数中可以使用的数字符号是0、1、2、3、4、5、6、7、8。( × ) 5、在汉字国标码GB2312-80的字符集中,共收集了6763个常用汉字。(√ ) 答案: 一、问答题 1、(1)0AH (2)51H (3)20H 2、(1)0~255 (2)0.996094 (3)0~65535 (4)-32768~32767 3、16 4、(1)X1=1 (2)X1∨ X2 ∨ X3=1 5、(1)X>Y (2)X

3、 R个,0 4、 110Q 5、 43H

6、 5.375

7、 110000010010B 三、选择题

1、D 2、A 3、A 4、B 5、C 6、B 7、D 8、C 9、B 10、D 四、是非判断题

1、√ 2、× 3、× 4、× 5、√

1. 微处理器,微型计算机和微型计算机系统三者之间有何区别?

答:微处理器即CPU,它包括运算器、控制器、寄存器阵列和内部总线等部分,用于实现微型计算机的运算和控制功能,是微型计算机的核心;一台微型计算机由微处理器、内存储器、I/O接口电路以及总线构成;微型计算机系统则包括硬件系统和软件系统两大部分,其中硬件系统又包括微型计算机和外围设备;由此可见,微处理器是微型计算机的重要组成部分,而微型计算机系统又主要由微型计算机作为其硬件构成。

2. CPU在内部结构上由哪几部分构成?CPU应具备哪些主要功能?

答:CPU在内部结构上由运算器、控制器、寄存器阵列和内部总线等各部分构成,其主要功能是完成各种算数及逻辑运算,并实现对整个微型计算机控制,为此,其内部又必须具备传递和暂存数据的功能。

3. 累加器和其它通用寄存器相比有何不同?

答:累加器是通用寄存器之一,但累加器和其它通用寄存器相比又有其独特之处。累加器除了可用做通用寄存器存放数据外,对某些操作,一般操作前累加器用于存放一个操作数,操作后,累加器用于存放结果。

4. 微型计算机的总线有哪几类?总线结构的特点是什么?

答:微型计算机的总线包括地址总线、数据总线和控制总线三类,总线结构的特点是结构简单、可靠性高、易于设计生产和维护,更主要的是便于扩充。 5. 举出10个微型计算机应用的例子。 答:略

6. 计算机I/O接口有何用途?试列出8个I/O接口。

答:计算机I/O接口是连接计算机和外部设备的纽带和桥梁,它主要用于协调和控制计算机与

外设之间的信息流通和交换。例如:串行通讯口(COM口)、并行打印机口、软盘驱动器接口、硬盘驱动器接口、光驱接口、显示器接口、音响设备接口、其它通用设备接口(USB、SCSI等)。

7. 现在,计算机主板上一般都包括哪些I/O接口?I/O接口卡如何与主板相连?

答:现在,计算机主板上一般包括串行通讯口、并行打印口、软盘驱动器接口、硬盘驱动器接口、光驱接口、USB接口等。象显示器适配器、网卡、modem卡等I/O接口卡一般通过总线插槽与主板相连。

8. 简述系统总线,AGP总线,PCI总线及ISA总线的作用。

答:系统总线是CPU与存储器及桥接器之间传递信息的通道,AGP总线专门用与连接CPU与显示器适配器,PCI总线一般用于连接一些高速外设接口作为高速外设与CPU或内存交换信息的通道,而ISA总线一般用于连接一些非高速外设接口作为非高速外设与CPU或内存交换信息的通道。

9. 试说明计算机用户,计算机软件,计算机硬件三者的相互关系。

答:计算机用户,计算机软件系统,计算机硬件系统共同构成一个计算机应用系统,三者在该系统中处于三个不同的层次。计算机用户处于最高层,计算机软件处于中间层,计算机硬件系统处于最下层。在这里计算机用户是系统的主宰,他们通过软件系统与硬件系统发生关系,指挥计算机硬件完成指定的任务。即,计算机用户使用程序设计语言编制应用程序,在系统软件的干预下使用硬件系统进行工作。

10. 简述DOS操作系统各部分的作用及相互关系。

答:DOS操作系统包括3个模块:DOS-Shell(COMMAND.COM)、DOS-Kernel(IBMDOS.COM)、DOS-BIOS(IBMBIO.COM).

DOS-Shell模块对用户输入的DOS命令行或应用程序行作出响应。即负责DOS命令的解释和任务的分配,具体工作则要靠DOS-Kernel模块所提供的系统功能完成。

DOS-Kernel模块尽管提供了许多的系统功能,但由于执行每一个系统功能过程中,完全依赖各种设备实现指定的功能,因此,它还要进一步调用DOS-BIOS模块中的设备驱动程序才能工作。

DOS-BIOS模块对DOS-Kernel传送的\请求\进行解释,最终转换为对固化在ROM-BIOS中的设备控制程序的请求并由它们去控制硬件,完成指定的操作。

共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

11. 存储单元的选择由什么信号控制?读、写靠什么信号区分?

答:存储单元的选择由地址信号控制,而对存储单元进行读操作还是写操作则要靠读、写信号区分。

12. 以一个可执行文件的运行为例,简述程序执行过程。

答:当在DOS提示符下键入一个可执行文件名称(或在其它操作系统环境下执行有关操作)后,操作系统自动将该文件从外存装入内存并使指令指针指向其第一条指令,从而启动文件执行过程。首先将第一条指令从内存取入CPU中译码执行,同时指令指针自动加1或按指令的要求作出相应改变,指向下一条要执行的指令,接着将下一条指令从内存取入CPU译码执行,这样不断重复取指令和执行指令的过程,逐条执行指令,直至程序结束。

1.把下列各数化成二进制数和八进制数(二进制取3位小数,八进制取一位小数): 7+3/4,±3/64,73.5, 725.9375,25.34

答:7+3/4=111.110B; 7+3/4=7.6O; ±3/64=±0.000B; ±3/64=±0.0O; 73.5=1001001.100B; 73.5=111.4O;

725.9375=1011010101.111B; 725.9375=1325.7O; 25.34=11001.011B; 25.34=31.3O 2.把下列各数化成十进制数:101.10011B ,22.2O, AD.4H 答:101.10011B=5.59375; 22.2O=18.25; AD.4H=173.25

3.完成下列二进制数运算:101.111+11.011,1001.10-110.01,101.11*11.01, 101110111/1101

答:101.111+11.011=1001.01; 1001.10-110.01=11.01; 101.11*11.01=10010.1011; 101110111/1101=11100.11

4.完成下列各十六进制数的运算: A39E+28DC,D5AB-7CE5,2BF*4C,C16E/3A 答:A39E+28DC=CC7A; D5AB-7CE5=58C6; 2BF*4C=D0B4; C16E/3A=355.C2

5.先将15B*8E/2A中的十六进制数化成十进制数,再进行计算,最后再将结果化为十六进制数。 答:15BH*8EH/2AH=347*142/42=49274/42=1173.19=495.30AH 6.试分别判断下列各组数据中哪个数据最大?哪个数据最小? (1) A=0.1001B,B=0.1001D,C=0.1001H (2) A=10111101B,B=1001D,C=111H 答:(1) A最大, C最小; (2) B最大, A最小;

1.写出下列各数的二进制原码和补码(最后两个用双字节): 0,96,-128,-38H,127,105,879H,-32768

答:上述各数的原码依次为:00000000(10000000), 01100000, 无, 10111000, 01111111, 01101001, 0000100001111001, 无;

上述各数的补码依次为:00000000, 01100000, 10000000, 11001000, 01111111, 01101001, 0000100001111001, 1000000000000000;

2.分别列出下述10进制数的16进制数、非压缩的BCD数、压缩的BCD数、ASCII数字串(用16进制形式写出):10, 64, 78, 81, 92, 100, 125, 255

答:上述各数的16进制数依次为:AH,40H,4EH,51H,5CH,64H,7DH,FFH;

上述各数的非压缩的BCD数依次为:0100H,0604H,0708H,0801H,0902H,010000H, 010205H,020505H;

上述各数的压缩的BCD数依次为:10H,64H,78H,81H,92H,0100H,0125H,0255H;

上述各数的ASCII数字串依次为:3130H,3634H,3738H,3831H,3932H,313030H,313235H, 323535H;

3.用10进制数写出下列补码表示的机器数的真值:71H,1BH,80H,F8H,397DH,CF42H,9350H

答:上述补码表示的各机器数的真值用10进制数分别表示为: +113,+27,-128,-8,+14717,-2067

0,-27828

4.若用一个字节来表示带符号数,判断下列各运算在机内进行时是否会产生溢出,写出判断过程。

A. 5BH+32H; B. -08H-15H; C. -51H+(-3DH); D. 2DH+3CH 答:A. 产生溢出, 5BH=01011011B其补码表示的机器数为:01011011 32H=00110010B其补码表示的机器数为:00110010 相加的结果为:10001101

数值最高位向符号位进位,但符号位向前无进位,故产生溢出。 B. 不产生溢出, -08H=-00001000B其补码表示的机器数为:11111000 -15H=-00010101B其补码表示的机器数为:11101011 相加的结果为:111100011

共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

数值最高位向符号位进位,符号位同时也向前进位,故不产生溢出. C.产生溢出,-51H=-01010001B其补码表示的机器数为:10101111 -3DH=-00111101B其补码表示的机器数为:11000011 相加的结果为:101110010 数值最高位向符号位无进位,但符号位向前进位,故产生溢出. D.不产生溢出,2DH=00101101B其补码表示的机器数为:00101101 3CH=00111100B其补码表示的机器数为:00111100 相加的结果为:01101001 数值最高位向符号位无进位,符号位向前也无进位,故不产生溢出。 5.从键盘敲入一个大写字母,如何转换为与其相对应的小写字母?从键盘敲入16进制数字符0~F,如何转换为其相对应的二进制数(00000000~00001111)? 答:从键盘敲入一大写字母后,将其ASCII码加上20H,就转换成了与其相对应的小写字母。 从键盘敲入16进制数字符0~9后,将其ASCII码值减去30H,就转换成了与其相对应的二进制数. 从键盘敲入16进制数字符A~F后,将其ASCII码值减去37H,就转换成了与其相对应的二进制数. 6.详细叙述总线缓冲器的作用。 答:总线缓冲器的作用主要是控制各路数据在总线上的交叉传送避免相互冲突,当几路数据都要向总线上传送时,就通过各路的缓冲器来解决,当一路传送时,缓冲器使其它各路数据与总线断开。 7.锁存器和寄存器有什么不同? 答:锁存器与寄存器都是用来暂存数据的器件,在本质上没有区别,不过寄存器的输出端平时不随输入端的变化而变化,只有在时钟有效时才将输入端的数据送输出端(打入寄存器),而锁存器的输出端平时总随输入端变化而变化,只有当锁存器信号到达时,才将输出端的状态锁存起来,使其不再随输入端的变化而变化。 答:传统计算机在执行程序时,CPU总是相继地完成取指令和执行指令的动作,即,指令的提取和执行是串行进行的。而8086CPU 在功能上分成了EU和BIU两部分,BIU负责取指令,EU负责指令的执行,它们之间既互相独立又互相配合,使得8086可以在执行指令的同时进行取指令的操作,即实现了取指令和执行指令的并行工作,大大提高了CPU和总线的利用率,从而提高了指令的处理速度。 2.8086 CPU中地址加法器的重要性体现在哪里? 答:地址加法器是8086 CPU的总线接口单元中的一个器件,在8086存储器分段组织方式中它是实现存储器寻址的一个关键器件,地址加法器将两个16位寄存器中的逻辑地址移位相加,得到一个20位的实际地址,把存储器寻址空间从64K扩大到1M,极大地扩大了微型计算机的程序存储空间,从而大大提高了程序运行效率。 3.8086 CPU中有哪些寄存器?分组说明用途。哪些寄存器用来指示存储器单元的偏移地址? 答:8086 CPU中有8个通用寄存器AX、BX、CX、DX、SP、BP、SI、DI;两个控制寄存器IP、FL;四个段寄存器CS、DS、SS、ES。8个通用寄存器都可以用来暂存参加运算的数据或中间结果,但又有各自的专门用途。例如,AX专用做累加器,某些指令指定用它存放操作数和运算结果;CX为计数寄存器,在某些指令中做计数器使用;DX为数据寄存器;BX为基址寄存器,BP为基址指针,SI为源变址寄存器,DI为目的变址寄存器,这4个寄存器在数据寻址中用来存放段内偏移地址(有效地址)或段内偏移地址的一部分;SP为堆栈指示器,用来存放栈顶有效地址。两个控制寄存器用来存放有关的状态信息和控制信息。例如,标志寄存器FL用来存放状态标志和控制标志;而指令指针用来存放下一条要取指令的有效地址。四个段寄存器用来存放段地址。例如,CS寄存器用来存放代码段的段地址;DS寄存器用来存放数据段的段地址;SS寄存器用来存放堆栈段的段地址;ES寄存器用来存放扩展段的段地址。 1.8086从功能上分成了EU和BIU两部分。这样设计的优点是什么? 4.8086系统中存储器的逻辑地址由哪两部分组成?物理地址由何器件生成?如何生成?每个段的逻辑地址与寄存器之间有何对应关系? 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

答:8086系统中存储器的逻辑地址由段地址(段首址)和段内偏移地址(有效地址)两部分组成;存储单元的物理地址由地址加法器生成,寻址时,CPU首先将段地址和段内偏移地址送入地址加法器,地址加法器将段地址左移4位并与段内偏移地址相加,得到一个20位的物理地址。数据段的段地址在DS寄存器中,段内偏移地址可能在BX、BP、SI或DI寄存器中。代码段的段地址在CS寄存器中,段内偏移地址在IP寄存器中。堆栈段的段地址在SS寄存器中,段内偏移地址在SP寄存器中。扩展段的段地址在ES寄存器中,段内偏移地址可能在BX、BP、SI或DI寄存器中。 5.设CPU中各有关寄存器的当前状况为:SS=0a8bH、DS=17ceH、CS=dc54H、BX=394bH、IP=2f39H、SP=1200H,BX 给出的是某操作数的有效地址,请分别写出该操作数、下一条要取的指令及当前栈顶的逻辑地址和物理地址。 答:该操作数的逻辑地址为DS:BX=17CE:394BH,物理地址=17CEH*10H+394BH=1B62BH;下一条要取的指令的逻辑地址为CS:IP=DC54:2F39H,物理地址=DC54H*10H+2F39H=DF479H;当前栈顶的逻辑地址=SS:SP=0A8B:1200H,物理地址=0A8BH*10H+1200H=0BAB0H。 6.若DS=157DH时,某操作数的物理地址是215FAH,当DS=18DEH时,该操作数的物理地址是多少? 答:该操作数的段内偏移地址=该操作数的物理地址-DS=215FAH-157D0H=BE2AH, 故当DS=18DEH时,该操作数的物理地址=DS*10H+BE2AH=18DE0H+BE2AH=24C0AH 7.设 AX=2875H、BX=34DFH、SS=1307H、SP=8H,依此执行 PUSH AX、PUSH BX、POP AX、POP CX后栈顶指针变为多少?AX=? BX=? CX=? 答:当前栈顶指针=SS*10H+SP=13070H+8H=13078H,依此执行PUSH AX、PUSH BX、POP AX、POP CX后栈顶指针仍为13078H。但AX=34DFH,BX=34DFH,CX=2875H。 1. 假定(BX)=637DH,(SI)=2A9BH,位移量D=3237H,试确定在以下各种寻址方式下的有效地址是什么? (1)立即寻址 (2)直接寻址 (3)使用BX的寄存器寻址 (4)使用BX的间接寻址 (5)使用BX的寄存器相对寻址 (6)基址变址寻址 (7)相对基址变址寻址 答:(1)立即数寻址的有效地址是当前IP的内容; (2)直接寻址,若使用位移量D=3237H进行,则有效地址为3237H; (3)使用BX的寄存器寻址时,操作数在BX寄存器中,因此无有效地址; (4)使用BX的间接寻址时,有效地址在BX寄存器中,即有效地址=637DH; (5)使用BX的寄存器相对寻址的有效地址=(BX)+D=637DH+3237H=95B4H; (6)基址变址寻址的有效地址=(BX)+(SI)=637DH+2A9BH=8E18H; (7)相对基址变址寻址的有效地址=(BX)+(SI)+D=C050H; 2. 写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令。要求使用以下几种寻址方式: 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

(1)寄存器间接寻址 (2)寄存器相对寻址 (3)基址变址寻址 答:(1)使用寄存器间接寻址,把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令为: 3. 现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20100H)=12H,(20101H)=34H,(20102H)=56H,(20103H)=78H,(21200H)=2AH,(21201H)=4CH,(21202H)=B7H,(21203H)=65H,试说明下列各条指令执行完后AX寄存器的内容。 (1)MOV AX,1200H (2)MOV AX,BX (3)MOV AX,[1200H] MOV BX,BLOCK (4)MOV AX,[BX] ADD BX,12 (5)MOV AX,[BX+1100] MOV DX,[BX] (6)MOV AX,[BX+SI] (2)使用寄存器相对寻址,把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令为: MOV BX,BLOCK MOV DX,[BX+12] (3)使用基址变址寻址,把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令为: MOV BX,BLOCK MOV SI,12 (5)指令MOV AX,[BX+1100]是将从物理地址=(DS)*10H+(BX)+1100H=2120 MOV DX,[BX+SI] 0H开始的两个单元内容送AX,故执行完后AX寄存器的内容为4C2AH; (6)指令MOV AX,[BX+SI]是将从物理地址=(DS)*10H+(BX)+(SI)=20102H开始的两个单元内容送AX,故执行完后AX寄存器的内容为7856H; 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页 (7)MOV AX,[BX+SI+1100] 答:(1)指令MOV AX,1200H执行完后AX寄存器的内容为1200H; (2)指令MOV AX,BX执行完后AX寄存器的内容为0100H; (3)指令MOV AX,[1200H]是将从物理地址=(DS)*10H+1200H=21200H开始的两个单元内容送AX,执行完后AX寄存器的内容为4C2AH; (4)指令MOV AX,[BX]是将从物理地址=(DS)*10H+(BX)=20100H开始的两个单元内容送AX,故执行完后AX寄存器的内容为3412H;

(7)指令MOV AX,[BX+SI+1100]是将从物理地址=(DS)*10H+(BX)+(SI)+1100H=21202H开始的两个单元内容送AX,故执行完后AX寄存器的内容为65B7H; 4.假设已知(DS)=2900H,(ES)=2100H,(SS)=1500H,(SI)=00A0H,(BX)= 0100H,(BP)=0010H,数据段中变量名VAL的偏移地址值为0050H,试指出下列源操作数字段的寻址方式是什么?其物理地址值是多少?

(5)在指令 MOV AX,[BX] 中,源操作数字段的寻址方式是寄存器间接寻址,其物理地址值=(DS)*10H +(BX)=29000H+100H=29100H;

(6)在指令 MOV AX,ES:[BX] 中,源操作数字段的寻址方式是寄存器间接寻址,其物理地址值=(ES)*10H+(BX)=21000H+100H=21100H;

(7)在指令 MOV AX,[BP] 中,源操作数字段的寻址方式是寄存器间接寻址,其

(1) MOV AX,0ABH (2) MOV AX,BX (3) MOV AX,[100H] (4) MOV AX,VAL (5) MOV AX,[BX] (6) MOV AX,ES:[BX]

物理地址值=(SS)*10H +(BP)=15000H+10H=15010H;

(8)在指令 MOV AX,[SI] 中,源操作数字段的寻址方式是寄存器间接寻址,其物理地址值=(DS)*10H +(SI)=29000H+0A0H=290A0H;

(9)在指令 MOV AX,[BX+10] 中,源操作数字段的寻址方式是寄存器相对寻址,

(7) MOV AX,[BP] (8) MOV AX,[SI] (9) MOV AX,[BX+10] (10) MOV AX,VAL[BX] (11) MOV AX,[BX][SI] (12) MOV AX,[BP][SI]

答:(1)在指令 MOV AX,0ABH 中,源操作数字段的寻址方式是立即数寻址,其物理地址值=(CS)*10H+(IP);

(2)在指令 MOV AX,BX 中,源操作数字段的寻址方式是寄存器寻址,操作数在BX中,无物理地址;

(3)在指令 MOV AX,[100H] 中,源操作数字段的寻址方式是直接寻址,其物理地址值=(DS)*10H+100 =29000H+100H=29100;

(4)在指令 MOV AX,VAL 中,源操作数字段的寻址方式是直接寻址,其物理地址值=(DS)*10H+50H =29000H+50H=29050H;

其物理地址值=(DS)*10H+(BX)+0AH= 29000H+100H+0AH =2910AH;

(10)在指令 MOV AX,VAL[BX] 中,源操作数字段的寻址方式是寄存器相对寻址,其物理地址值=(DS)*10H+(BX)+50H= 29000H+100H+50H= 29150H;

(11)在指令 MOV AX,[BX][SI] 中,源操作数字段的寻址方式是基址变址寻址,其物理地址值=(DS)*10H+(BX)+(SI) =29000H+100H+0A0H =291A0H; (12)在指令 MOV AX,[BP][SI] 中,源操作数字段的寻址方式是基址变址寻址,其物理地址值=(SS)*10H+(BP)+(SI)=15000H+10H+0A0H =150B0H 5.分别指出下列指令中的源操作数和目的操作数的寻址方式。 (1)MOV SI,200 (2)MOV CX,DATA[SI] (3)ADD AX,[BX+DI]

共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

(4)AND AX,BX (5)MOV [SI],AX (6)PUSHF 答:(1)目的操作数字段的寻址方式是寄存器寻址,源操作数字段的寻址方式是立即数寻址; (2)目的操作数的寻址方式是寄存器寻址,源操作数的寻址方式是寄存器相对寻址; (3)目的操作数的寻址方式是寄存器寻址,源操作数的寻址方式是基址变址寻址; (5)MOV BX,[BX+SI+2] 答:(1)指令MOV AL,[BX+5]中内存操作数的所在地址=(DS)*10H+(BX)+5; (2)指令MOV [BP+5],AX中内存操作数的所在地址=(SS)*10H+(BP)+5和(SS)*10H+(BP)+6; (3)指令INC BYTE PTR[SI+3]中内存操作数的所在地址=(DS)+(SI)+3; (4)指令MOV DL,ES:[BX+DI]中内存操作数的所在地址=(ES)*10H+(BX)+(DI); (5)指令MOV BX,[BX+SI+2]中内存操作数的所在地址=(DS)*10H+(BX)+(S(4)目的操作数的寻址方式是寄存器寻址,源操作数的寻址方式也是寄存器寻址; (5)目的操作数的寻址方式是寄存器间接寻址,源操作数的寻址方式是寄存器寻址; (6)目的操作数的寻址方式是寄存器间接寻址,源操作数的寻址方式是寄存器寻址; 6.试述指令MOV AX,2010H和MOV AX,DS:[2010H] 的区别。 答:指令MOV AX,2010H是将立即数2010H送AX寄存器,而指令MOV AX,DS:[2010H]是将DS段有效地址为2010H的两个单元的内容送AX。 7.写出以下指令中内存操作数的所在地址。 (1)MOV AL,[BX+5] (2)MOV [BP+5],AX (3)INC BYTE PTR [SI+3] (4)MOV DL,ES:[BX+DI] I)+2和(DS)*10H+(BX)+(SI)+3; 8.判断下列指令书写是否正确,如有错误,指出错在何处并用正确的程序段(一条或多条指令)实现原错误指令((8)、(13)除外)期望实现的操作。 (1)MOV AL,BX (9)MOV ES,3278H (2)MOV AL,SL (10)PUSH AL (3)INC [BX] (11)POP [BX] (4)MOV 5,AL (12)MOV [1A8H],23DH (5)MOV [BX],[SI] (13)PUSH IP (6)MOV BL,F5H (14)MOV [AX],23DH (7)MOV DX,2000H (15)SHL AX,5 (8)POP CS (16)MUL AX,BX 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

答:(1)MOV AL,BX 错,源操作数为字类型,目的操作数为字节类型,二者不一致。应改为:MOV AX,BX 或 MOV AL,BL ;

(2)MOV AL,SL 错,SI寄存器不能分为高8位和低8位使用,即没有SL寄存器。应改为:MOV AX,SI

(12)MOV [1A8H],23DH 错,源操作数是立即数,目的操作数必须使用寄存器指出。应改为:

MOV BX,1A8H MOV [BX],23DH

(3)INC [BX] 错,未指定操作数的类型。应改为:INC BYTE PTR [BX] (4)MOV 5,AL 错,目的操作数使用了立即数,在指令中一般不允许。应改为:MOV DS:[5],AL

(5)MOV [BX],[SI] 错,源操作数和目的操作数均为内存单元,不允许。 应改为:MOV AX,[SI]

MOV [BX],AX

(6)MOV BL,F5H 错,源操作数错,以A~F开头的数字前应加0。应改为:MOV BL,

0F5H

(16)MUL AX,BX 错,目的操作数AX是隐含的,不能在指令中写出。应改为:MU

(7)MOV DX,2000H 正确。

(8) POP CS 错,不能将栈顶数据弹至CS中。 (9)MOV ES,3278H 错,立即数不能直接送ES寄存器。

应改为:MOV AX,3278H MOV ES,AX

(10)PUSH AL 错,栈操作不能按字节进行。应改为:PUSH AX (11)POP [BX] 正确。

共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

(13)PUSH IP 错,不能用IP寄存器做源操作数。

(14)MOV [AX],23DH 错,不能用AX寄存器间接寻址。应改为:MOV BX,AX MOV [BX],23DH (15)SHL AX,5 错,不能用大于己于1的立即数指出移位位数。应改为:

MOV CL,5 SHL AX,CL

L BX

9.设堆栈指针SP的初值为2000H,AX=3000H,BX=5000H,试问: (1)执行指令PUSH AX后 (SP)=?

(2)再执行PUSH BX及POP AX后 (SP)=?(AX)=?(BX)=? 答:(1)执行指令PUSH AX后 (SP)=2000H-2=1FFEH;

(2)再执行PUSH BX及POP AX后 (SP)=1FFEH, (AX)=5000H, (BX)=5000H

10.要想完成把[2000H]送[1000H]中,用指令:MOV [1000H],[2000H]是否正确?如果不正确,应用什么方法? SBB BX,53E2H ;高位字相减处并减去低位字相减产生的借位,结果送BX (2)使用移位指令实现一个字乘18的程序段是: 答:把[2000H]送[1000H]中,用指令 MOV [1000H],[2000H]不正确,应改为:MOV AX,[2000H] MOV [1000H],AX 11.假如想从200中减去AL中的内容,用SUB 200,AL是否正确?如果不正确,应用什么方法? 答:想从200中减去AL中的内容,用SUB 200,AL不正确,应改为: MOV BL,200 SUB BL,AL SHL AX,CL ;被乘数再乘以8(共乘以16),结果在AX中 12分别写出实现如下功能的程序段 ADD AX,BX ;被乘数再乘以18,结果在AX中 (1)双字减法(被减数7B1D2A79H,减数53E2345FH)。 (3)使用移位指令实现一个字除以10的运算,必须将X/10拆分成多项的和,而每一(2)使用移位指令实现一个字乘18的运算。 (3)使用移位指令实现一个字除以10的运算。 (4)将AX中间8位,BX低四位,DX高四位拼成一个新字。 (5)将数据段中以BX为偏移地址的连续四个单元的内容颠倒过来 (6)将BX中的四位压缩BCD数用非压缩BCD数形式顺序放在AL、BL、CL、DL中。 答:(1)双字减法的程序段是: MOV AX,2A79H ;被减数的低位字送AX SUB AX,345FH ;低位字相减,结果送AX MOV BX,7B1DH ;被减数的高位字送BX 项都应是非的某次幂的倒数。利用等比级数的前N项和公式,可求出A0=X/8,公比Q=-1/4,故X/10=X/8-X/32+X/128-X/512+..., 所求的程序段是: MOV AX,FE00H ;被除数送AX MOV CL,3 ;设置移位位数3 SHR AX,CL ;被乘数除以8,结果在AX中 MOV BX,AX ;被乘数除以8的结果暂存到BX MOV CL,2 ;设置移位位数2 SHR AX,CL ;被乘数除以4(累计除32),结果在AX中 MOV AX,05F7H ;被乘数送AX SHL AX,1 ;被乘数乘以2,结果在AX中 MOV BX,AX ;被乘数乘以2的结果暂存到BX MOV CL,3 ;设置移位位数3 共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

SUB BX,AX ;被除数/8-被除数/32,结果在BX中 MOV CL,2 ;设置移位位数2 SHR AX,CL ;被乘数除以4(累计除128),结果在AX中 ADD BX,AX ;被除数/8-被除数/32+被除数/128,结果在BX中 MOV AL,[BX+1] ;数据段中BX+1为偏移地址的字单元内容送AX XCHG AL,[BX+2] ;数据段中BX+2为偏移地址的字单元内容与AX的内容交换 MOV [BX+1],AL ;数据段中BX+2为偏移地址的字单元内容送BX+1为偏移地址的字单元 (6)将BX中的四位压缩BCD数用非压缩BCD数形式顺序放在AL、BL、CL、DL中的程 MOV CL,2 ;设置移位位数2 SHR AX,CL ;被乘数除以4(累计除512),结果在AX中 SUB BX,AX ;被除数/8-被除数/32+被除数/128-被除数/512,结果在BX中 (4) 将AX中间8位,BX低四位,DX高四位拼成一个新字的程序段是: AND DX,0F000H ;将DX的低12位清零,高4位不变 AND AX,0FF0H ;将AX的低4位清零,高4位清零,中间8位不变 AND BX,0FH ;将BX的高12位清零,低4位不变 ADD AX,BX ADD AX,DX ;按要求组成一个新字,结果放在AX中。 (5) 将数据段中以BX为偏移地址的连续四个单元的内容颠倒过来的程序段是: MOV AL,[BX] ;数据段中BX为偏移地址的字单元内容送AX 序段是: MOV DL,BL ;四位压缩BCD数的低位字节送DL AND DL,0FH ;DL的高4位清零,得四位非压缩BCD数的最低位,放入DL中 MOV CL,4 ;设置移位位数4 SHR BX,CL ;BX中的数据逻辑右移4位,使四位压缩BCD数的次低位位于BL的低4位 MOV CH,BL ;将BL的内容暂存到CH中保留 AND CH,0FH ;CH的高4位清零,得四位非压缩BCD数的次低位,放CH中 MOV CL,4 ;设置移位位数4 SHR BX,CL ;BX中的数据逻辑右移4位,使四位压缩BCD数的次高位位于BL的低4位 MOV AL,BL ;将BL的内容暂存到AL中保留 XCHG AL,[BX+3] ;数据段中BX+3为偏移地址的字单元内容与AX的内容交换 AND BL,0FH ;BL的高4位清零,得四位非压缩BCD数的次高位,放BL中 MOV [BX],AL ;数据段中BX+3为偏移地址的字单元内容送BX为偏移地址的字单元 MOV CL,4 ;设置移位位数4 共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

SHR AL,CL ;使四位压缩BCD数的最高位位于AL的低4位,得四位非压缩BCD数的次高

;位,放入BL中

(18)SUB AL, W_OP3+7 (19)MOV AX,BX SHL 2 (20)MOV BX,W_OP3 AND 8FD7H

答:1. (1)PUSH OP1 错,OP1为字节类型,栈操作不能按字节进行,应改为:PUS

MOV CL,CH ;将四位非压缩BCD数的次低位移入CL中

H WORD PTR OP1

(2)POP [W_OP4] 正确。

(3)MOV AX, WORD PTR [SI][DI] 错,源操作数寻址方式有问题。 应改为: MOV BX, SI

MOV AX, WORD PTR [BX][DI]

(4)MOV AX,WORD PTR ES:BX错,若源操作数为寄存器寻址是不能加段说明及属性修改的。

显然,原意应为寄存器间接寻址,故应改为: MOV AX,WORD PTR ES:[BX]

1.假设OP1,OP2是已经用DB定义的变量, W_OP3和W_OP4是已经用DW定义的变量,判断下列指令书写是否正确?如有错误,指出错在何处?并写出正确的指令(或程序段)实现原错误指令期望实现的操作((19)、(20)不改)。

(1)PUSH OP1 (2)POP [W_OP4]

(3)MOV AX, WORD PTR [SI][DI] (4)MOV AX,WORD PTR ES:BX (5)MOV BYTE PTR [BX], 1000 (6)MOV BX, OFFSET [SI+200H] (7)MOV OP2,[BX] (8)CMP HIGH W_OP3, 25 (9)CMP OP1, OP2 (10)CMP AX, OP2

(11)MOV W_OP3[BX+4*3][DI], SP (12)ADD W_OP3, W_OP4 (13)MOV AX, W_OP3[DX] (14)MOV OP1, LOW DS (15)MOV SP, OP2[BX][SI] (16)MOV AX, W_OP3+W_OP4 (17)MOV AX,W_OP3-W_OP4+100

共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

(5)MOV BYTE PTR [BX], 1000 错,源操作数为字类型,目的操作数为字节类型,二者不一

致。应改为: MOV WORD PTR [BX], 1000

(6)MOV BX, OFFSET [SI+200H] 错,OFFSET运算应在汇编时完成,但[SI+200H]在执行指令时才可获得。应改为: LEA BX,[SI+200H] (7)MOV OP2,[BX] 错,源操作数和目的操作数均为内存单元,不允许。

应改为: MOV AL, [BX]

MOV OP2, AL

(8)CMP HIGH W_OP3, 25错,目的操作数中使用HIGH来分离存储器操作数,这是不允许的。

应改为: CMP BYTE PTR W_OP3+1,25

(16)MOV AX, W_OP3+W_OP4错,两个标识符相加无意义。应改为: MOV AX, W_OP1

ADD AX,

(9)CMP OP1, OP2错,源操作数和目的操作数均为内存单元,不允许。

应改为: MOV AL, OP2 CMP AL, OP1

(18)SUB AL, W_OP3+7错,两个操作数类型不一致。应改为: SUB AL, BYTE PTR W_OP

(10)CMP AX, OP2错,源操作数为字节类型,目的操作数为字类型,二者不一致。

应改为: CMP AX, WORD PTR OP2 (11)MOV W_OP3[BX+4*3][DI], SP正确。

(12)ADD W_OP3, W_OP4错,源操作数和目的操作数均为内存单元,不允许。

应改为: MOV AX, W_OP4 ADD W_OP3, AX

(13)MOV AX, W_OP3[DX] 错,不能用DX寄存器间接寻址。

应改为: MOV BX, DX MOV AX, W_OP3[BX]

(14)MOV OP1, LOW DS错,源操作数中使用LOW来分离寄存器操作数,这是不允许的。

应改为: MOV WORD PTR OP1,DS

3+7

(19)MOV AX,BX SHL 2错,SHL只能对常量进行运算,左边不能使用寄存器

(20)MOV BX,W_OP3 AND 8FD7H错,AND只能对常量进行运算,左边不能使用变量

W_OP2

(17)MOV AX,W_OP3-W_OP4+100正确,源操作数为两个标识符(地址)相减再加一数,汇编

时得到一个数。

4.设已定义数据段 DATA SEGMENT ??

VAR2 DW 10H,7889H ??

VAR5 DB 20H,0 ADRR DW VAR2,VAR5 DATA ENDS

为使ADRR字存储单元中存放内容为“0010H”,ADRR+2字存储单元中存放内容为“0020H”,上述省略号位置应分别填写一条什么语句?说明理由。 答:为使ADRR字存储单元中存放内容为“0010H”,ADRR+2字存储单元中存

放内容为“0020H”,上述省略号位置应分别填写ORG 10H 和 ORG 20H,

(15)MOV SP, OP2[BX][SI] 错,源操作数为字节类型,目的操作数为字类型,二者不一致。应

改为:MOV SP, WORD PTR OP2[BX][SI]

或者分别填写语句

VAR1 DB 10H DUP(?) 和 VAR3 6 DUP(?)

共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

5.下面的数据段中,有数据为‘4100H’的字存储单元有几个?它们的偏移量分别是多少? DATA SEGMENT DA1 DB 0 ORG 41H DA2 DB 0,‘A’,41H,0,41H ADR DW DA1,DA2 DATA ENDS 答:给出的数据段中,有数据‘4100H’的字存储单元有3个,它们的偏移量分别是41H、 44H、47H。 答:所求程序框架为: Data SEGMENT AT 0E000H Arr_w LABEL WORD Arr_b DB 100 DUP(?) Data ENDS Sta_seg SEGMENT PARA ‘STACK’ DB 80 DUP(?) Top LABEL WORD 7.试用数据定义语句DB或DW改写下述两语句中的某一个,使它们在存储器中有完全相同的存储情况。 VAR1 DB ‘abcdefghij’ VAR2 DW 6162H,6364H,6566H,6768H,696AH ASSUME CS:Code,DS:data,SS:sta_seg 答:将第一个伪指令语句改写为VAR1 DW ‘ab’,‘cd’,‘ef’,‘gh’,‘ij’,第二个伪指令语句不变。或第一个伪指令语句不变,而将第二个伪指令语句改写为: VAR2 DB 61H,62H,63H,64H,65H,66H,67H,68H,69H,6AH 9.按下面的要求写出程序的框架 (1)数据段的位置从0E000H开始,数据段中定义一个100字节的数组,其类型属性既是字又是字节; (2)堆栈段从小段开始,段组名(类别名)为STACK; (3)代码段中指定段寄存器,指定主程序从1000H开始,给有关段寄存器赋值; (4)程序结束。 共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页 Sta_seg ENDS Code SEGMENT ORG 1000H Start: MOV AX, data MOV DS, AX MOV AX,Sta_seg MOV SS, AX MOV SP, OFFSET Top ??

MOV AH, 4CH INT 21H Code ENDS END Start 10.编写一个程序,要求运行时屏幕显示‘BELL’,同时响铃一次(响铃的ASCII码为07)。 MOV DL, 4CH MOV AH, 2 INT 21H MOV DL, 7 MOV AH, 2 INT 21H 答:所求程序为: MOV AH, 4CH Code SEGMENT INT 21H ASSUME CS:code Code ENDS Start: MOV DL, 42H END Start MOV AH, 2 11.假设在数据段X_SEG、附加段Y_SEG和堆栈段Z_SEG中分别定义了字变量 INT 21H MOV DL, 45H MOV AH, 2 INT 21H MOV DL, 4CH MOV AH, 2 INT 21H X、Y和Z,试编制一完整的程序计算 X+Y+Z,并将结果送X。 答:所求程序为: X_SEG SEGMENT X DW 12eH X_SEG ENDS Y_SEG SEGMENT Y DW 4d2H 共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

Y_SEG ENDS Z_SEG SEGMENT STACK ‘STACK’ Z DW 2CAH Z_SEG ENDS Code SEGMENT ASSUME CS:Code,DS:X_SEG,ES:Y_SEG,SS:Z_SEG Start: MOV AX, X_SEG MOV DS, AX MOV AX, Y_SEG Code ENDS END Start 12.写一个完整的程序放在代码段C_SEG中,要求把数据段D_SEG中的DADD1和附加段E_SEG中的DADD2相加,并把结果存放在D_SEG段中的SUM中。其中DADD1、DADD2和SUM均为双字类型,DADD1赋值为98765,DADD2赋值为-15893。 答:所求程序为: D_SEG SEGMENT DADD1 DD 98765 SUM DD ? D_SEG ENDS MOV ES, AX E_SEG SEGMENT MOV AX,ES:Y DADD2 DD -15893 ADD X, AX E_SEG ENDS MOV BP, 0 C_SEG SEGMENT MOV AX, [BP+Z] ASSUME CS: C_SEG,DS:D_SEG,ES:E_SEG ADD X, AX Start: MOV AX, D_SEG MOV AH, 4CH MOV DS, AX INT 21H MOV AX, E_SEG 共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

MOV ES, AX

MOV AX,WORD PTR DADD1 MOV BX,WORD PTR DADD1+2 ADD AX, WORD PTR ES:DADD2 ADC BX, WORD PTR ES:DADD2+2 MOV WORD PTR SUM, AX MOV WORD PTR SUM+2, BX MOV AH, 4CH INT 21H

C_SEG ENDS END Start

======================================================= 一、填空题

1、执行部件EU的组织有: 4个通用寄存器 , 4个专用寄存器 和 1个标志寄存器和算术逻辑部件 。

2、8086CPU从偶地址访问内存1个字时需占用 1个总线 周期,而从奇地址访问内存1个字操作需占用 2个总线 周期。

3、IBM-PC机中的内存是按段存放信息的,一个段最大存贮空间为 64K 字节。 4、8086微处理机在最小模式下,用 M/IO 来控制输出地址是访问内存还是访问I/O。

5、一台计算机能执行多少种指令,是在 设计 时确定的。

二、单项选择题

1、微型计算机的性能主要由 B 来决定。

A、价钱 B、CPU C、控制器 D、其它

2、对微处理器而言,它的每条指令都有一定的时序,其时序关系是 C A、一个时钟周期包括几个机器周期,一个机器周期包括几个指令周期。 B、一个机器周期包括几个指令周期,一个指令周期包括几个时钟周期。 C、一个指令周期包括几个机器周期,一个机器周期包括几个时钟周期。 D、一个指令周期包括几个时钟周期,一个时钟周期包括几个机器周期。 3、属于数据寄存器组的寄存器是 C A、AX,BX,CX,DS B、SP,DX,BP,IP

C、AX,BX,CX,DX D、AL,DI,SI,AH 4、微型计算机的ALU部件是包含在 D 之中。

A、存贮器 B、I/O接口 C、I/O设备 D、CPU

5、在8086和8088汇编语言中,一个字能表示的有符号数的范围是 B A、-32768≤n≤32768 B、-32768≤n≤32767 C、-65535≤n≤65535 D、-65536≤N≤65535

6、80386微型计算机是32位机,根据是它的 D 。 A、地址线是32位 B、数据线为32位

C、寄存器是32位的 D、地址线和数据线都是32位

7、某数存于内存数据段中,已知该数据段的段地址为2000H,而数据所在单元的偏移地址为0120H,该数的在内存的物理地址为( B )

A.02120H B.20120H C.21200H D.03200H

8、在存贮器读周期时,根据程序计数器PC提供的有效地址,使用从内存中取出( D ) A.操作数 B.操作数地址 C.转移地址 D.操作码 9、8086/8088系统中,对存贮器进行写操作时,CPU输出控制信号有效的是( A ) A.W/IO=1, WR=0 B. WR=1 C.M/IO=0, RD=0 D.RD=0

10、在8086/8088微机系统中,将AL内容送到I/O接口中,使用的指令是( D ) A.IN AL,端口地址 B.MOV AL,端口地址 C.OUT AL,端口地址 D.OUT 端口地址,AL 三、简答题

1. 微处理器内部结构由哪些部件组成?

2. 论述8086 CPU的最小方式和最大方式的区别。

3. 论述指令周期、机器周期和时钟周期间的关系。 4. 试比较8086CPU与8086CPU的异同之处。

5. 8086CPU从功能上分为几部分?各部分由什么组成?各部分的功能是什么?

6. 8086系统中的物理地址是如何得到的?假如CS=2500H,IP=2l00H,其物理地址是多少?

共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

7. 什么是最大模式?什么是最小模式?用什么方法将8086/8088置为最大模式和最小模

式? 8. 存储器分段组织有何优越性?

9. 试述BHE与A0组合如何选择数据字?

10. CPU响应中断时,为什么要执行两个连续的中断响应周期? 11.

28脚,8086是M/IO,8088是IO/M

5、8086从功能上可分为执行单元和总线接口单元。执行单元的功能是负责指令的执行,将指令译码并利用内部寄存器和ALU对数据进行处理。它由4个通用寄存器(AX、BX、CX、DX),4个专用寄存器(BP、SP、SI和DI),标志寄存器和算术逻辑部件组成。总线接口单元的功能是存储器、I/O端口传送数据。它由4 个段寄存器(CS、DS、ES、SS),指令指针寄存器IP,20位地址加法器和6个字节的指令队列组成。

6、在8086系统中,用16位的段地址和16位的偏移地址来表示20位的物理地址,物理地址=段地址*16+偏移址得到物理地址。

该题CS=2500H,IP=2l00H,则物理地址=CS*16+IP=2500H*16+2100H=27100H

7、最大模式是相对最小模式而言,系统中包含两个或多个处理品,其中一个主处理器就是8088/8086,其它处理器是协处理器,它是协助主处理器工作的。将MN/MX*置0即为最大模式。

最小模式又是相对于最大模式,就是在系统中只有一个处理器,所有的总线控制信号都有由8088/8086产生,系统中总线控制逻辑电路少,将MN/MX*置1即为最大模式。

8、减少了指令的长度,提高了执行速度。内存分段为程序浮动加载创造了条件。使程序保持完整的相对性,具备了浮动性。

9、BHE的作用是高8位数据允许,A0=0是低8位数据允许,在T1状态时,BHE和A0

组合起来表示连接在数据总线上的存储器和I/O端口当前的数据在总线上出现有格式。

10、CPU响应中断时,执行两个连续的中断响应周期,每个响应周期都给出中断响应信号

答案:

一、填空题

1、 4个通用寄存器、4个专用寄存器、1个标志寄存器和算术逻辑部件 2、 1个总线、2个总线 3、 64K 4、 M/IO

5、 设计 二、 单项选择题

1、B 2、C 3、C 4、D 5、B 6、D 7、B 8、D 9、A 10、D 三、简答题

1、 答案:微处理器由两部分组成,总线接口单元和执行单元

2、8086CPU的最小方式和最大方式的区别是:最小方式,MN/MX接+5V(MX为低电平),用于构

成小型单处理机系统,支持系统工作的器件:(1)时钟发生器,8284A,(2)总线锁存器,74LS373,(3)总线收发器,74LS245,控制信号由CPU提供。最大方式,MN/MX接地(MX为低电平),用于构成多处理机和协处理机系统,支持系统工作的器件:(1)时钟发生器,8284A,(2)总线锁存器,74LS373,(3)总线收发器,74LS245,(4)总线控制芯片,8288,控制信号由8288提供。 3、答:(1).执行一条指令所需要的时间称为指令周期;(2).一个CPU同外部设备和内存储器之间进行信息交换过程所需要的时间称为总线周期;(3).时钟脉冲的重复周期称为时钟周期;(4).一个指令周期由若干个总线周期组成,一个总线周期又由若干个时钟周期组成;(5). 8086CPU的总线周期至少由4个时钟周期组成;(6).总线周期完成一次数据传输包括:传

INTA。这是因为第一个总线周期通知中断请示设备,微处理器准备响应中断,应该准备好中

断类型码,第二个总线周期中,微处理器接收中断类型码,以便得到中断向量,即中断服务程

序的入口地址。

一、问答题:

1、 微型计算机是由五部分组成,包括控制器,运算器,存储器、输入设备,输出设备;控

制器控制计算机运转,计算器主要是算术运臬和逻辑运算,存储器主要是存储信息,输入设备主要是输入信息给计算机,输出设备主要是计算机输出信息。

2、 IBM PC机的主存主要有只读存储器和随机存储器。只读存储器只能读出,不能写入,随机存储器可以写入也可以读出。

3、 8086微处理器的字长为16位,能直接访问的存储单元可以是2个字节。

4、 8088微处理器的逻辑地址两部分组成,包括段地址和偏移地址;物理地址=段地址*16+

偏移地址。

5、 如果一个程序在执行前(CS)=0A7F0H,(IP)=2B40H,该程序的起始地址

=0A7F0H*16+2B40H=0AAA40H。

送地址,传送数据;(7)等待周期----在等待周期期间,总线上的状态一直保持不变;(8)

空闲周期----总线上无数据传输操作

4、 8088CPU和8086CPU内部寄存器都是16位,数据总线都有是16位,地址总线都有是20

位,指令系统相同。主要不同点有:

(1) 8086指令队列是6个字节长,而8088指令队列是4个字节长。 (2) 外部数据总线位数不同,8086为16位AD0~AD15,8088为AD0~AD7

(3) 34脚和28脚功能不同,34脚8086中是数据总线允许BHE/S7,8088是SSO,

共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

6、

78H 56H 34H 12H (1).立即数寻址 (2).寄存器寻址 (3).直接寻址 (4).寄存器间接寻址 (5).寄存器相对寻址方式 (6).基址变址寻址方式 (7).相对基址变址寻址方式

二、填空题

1、 CPU、存储器 2、 4、4、ALU

3、 逻辑地址、物理地址

4、 偏移地址,段基址*16+偏移地址,段寄存器 5、码、操作数

6、寄存器相对寻址方式,寄存器间接寻址,直接寻址,基址变址寻址方式,寄存器寻址,立即数寻址,相对基址变址寻址方式,寄存器相对寻址方式 7、ZF,CF,SF,OF 8、1,有符号 9、05AEH,4000H

10、0AB0H,1,1,0F8B0H,1,1 三、选择题

1、C 2、A 3、C 4、B 5、A 6、D 7、C 8、B 9、C 10、D 四、是非判断题

1、× 2、× 3、√ 4、√ 5、× 6、× 五、根据以下要求选用相应的指令或指令序列 1、 MOV AX,4629H 2、 LDS BX,DATA 3、 ADD DX,BX 4、 SUB AX,0360H 5、 MOV BX,ES:[0500H] 6、 MOV CL,2

SHL AL,CL 7、IMUL BL

02003H 02002H 02001H 02000H

8、MOV CX,0 9、OR DX,0E00H 5、 AND AL,0FH 6、 XOR CL,0F0H 7、 MOV CL,2 SAR AX,CL

13、MOV CL,4 ROL AL,CL 14、SHL AX,1 RCL DX,1 15、NEG DX NEG AX SBB DX,0

=======================================================

一、问答题

1、下列字符表示成相应的ASCII码是多少?

(1)换行 (2)字母“Q” (3)空格

2、下列各机器数所表示数的范围是多少? (1)8位二进制无符号定点整数; (2)8位二进制无符号定点小数;

(3)16位二进制无符号定点整数;

(4)用补码表示的16位二进制有符号整数;

3、(111)X=273,基数X=?

4、有一个二进制小数X=0.X1X2X3X4X5X6

(3) 若使X≥1/2,则X1??X6应满足什么条件? (4)

若使X>1/8,则X1??X6应满足什么条件?

6、 有两个二进制数X=01101010,Y=10001100,试比较它们的大小。 (1) X和Y两个数均为无符号数; (2) X和Y两个数均为有符号的补码数。 二、填空题

1、对于R进制数来说,其基数(能使用的数字符号个数)是 ,能使用的最小数字符号是 。

2、十进制数72转换成八进制数是 。

3、与十进制数67等值的十六进制数是 。 4、二进制数101.011转换成十进制数是 。 5、十六进制数0E12转换成二进制数是 。 三、选择题

共 8 页,第 !语法错误,2 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,2 页

7、寻址方式就是指:寻找操作数或者操作地址的各种方法,寻址方式主要有7种

1、在计算机内部,一切信息的存取、处理和传送都是以 形式进行的。 A)EBCDIC码 B)ASCII码 C)十六进制编码 D)二进制编码 2、与十进制数56等值的二进制数是 。

A)111000 B)111001 C)101111 D)110110 3、十进制数59转换成八进制数是 。

A)73Q B)37Q C)59Q D)112Q 4、与十进制数58.75等值的十六进制数是 。

A)A3.CH B)3A.CH C)3A.23H D)C.3AH 5、二进制数1101.01转换成十进制数是 。

A)17.256 B)13.5 C)13.25 D)17.5 6、二进制数111010.11转换成十六进制数是 。 A)3ACH B)3A.CH C)3A3H D)3A.3H 7、十六进制数1CB.D8转换成二进制数是 。 A)110001011.11001 B)111101011.11101 C)111101011.11101 D)111001011.11011

8、将十六进制数FF.1转换成十进制数是 。 A)255.625 B)2501625 C)255.0625 D)250.0625

9、十进制正数43的八位二进制原码 。

A)00110101 B)00101011 C)10110101 D)10101011 10、十进制正数38的八位二进制补码是 。

A)00011001 B)10100110 C)10011001 D)00100110 四、是非判断题

1、在第三代计算机期间出现了操作系统。 ( ) 2、对于种类不同的计算机,其机器指令系统都是相同的。( ) 3、在计算机中,数据单位bit的意思是字节。 ( )

4、八进制数的基数为8,因此在八进制数中可以使用的数字符号是0、1、2、3、4、5、6、7、8。( )

5、在汉字国标码GB2312-80的字符集中,共收集了6763个常用汉字。( )

答案:

一、问答题 1、(1)0AH (2)51H (3)20H

2、(1)0~255 (2)0.996094 (3)0~65535 (4)-32768~32767 3、16 4、(1)X1=1 (2)X1∨ X2 ∨ X3=1 5、(1)X>Y (2)X

10、 11、 43H 5.375

12、 110000010010B 三、选择题

1、D 2、A 3、A 4、B 5、C 6、B 7、D 8、C 9、B 10、D 四、是非判断题

1、√ 2、× 3、× 4、× 5、√

一、 回答下列问题

1、 设VALA EQU 200 VALB EQU 30 VALC EQU 1BH 下列表达式的值各为多少? (1)(VALA*VALC+VALB)/VALC

(2)(VALB AND 0FH)OR (VALB XOR 0FH) (3)(VALA GE VALB )AND 0FH 2. 根据下列要求编写一个汇编语言程序:: (1)代码段的段名为COD_SG (2)数据段的段名为DAT_SG

(3)堆栈段的段名为STK_SG (4)变量HIGH_DAT所包含的数据为95 (5)将变量HIGH_DAT装入寄存器AH,BH和DL (6)程序运行的入口地址为START

3、定义一个数据段的字符变量和数据变量。

(1) TRING为字符串变量:‘Personal computer’ (2) VALD为十进制数字节变量12,99

(3) VALH为十六进制数字变量32H,0FAH (4) VALZ为10个零的字节变量 (5) VALW为20个字单元 4、定义一个数据段,要求如下:

(1) 段界起始于字边界

(2) 该段与同名逻辑段相邻连接成一个物理段 (3) 类别号为‘DATA’ (4) 定义数据12,30,‘ABCD’ (5) 保留20个字的存储区 5、下列标号为什么是非法的?

(1) GET.DATA (2) 1_NUM (3) TEST-DATA (4) RET (5) NEW ITEM 6、下面的数据项设置了多少个字节? (1) ASC_DATA DB ?1234? (2) HEX_DATA DB 1234H

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

7、 DATA SEGMENT TABLE_ADDR DW 1234H DATA ENDS . . . MOV BX, TABLE_ADDR LEA BX, TABLE_ADDR 请写出上述两条指令执行后, BX寄存器中的内容。 8、写出分配给下列中断类型号在中断向量表中的物理地址。 (1) INT 12H (2) INT 8

9、AR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处。

(1)ADD VAR1,VAR2 (2)SUB AL,VAR1

(3)JMP LAB[SI] (4)JNZ VAR1

二、填空题

1、假设(DS)=2000H,(BX)=1256H,(SI)=528FH;位移量TABLE=20A1H,(232F7H)=3280H,(264E5H)=2450H,则

执行指令JMP BX后,(IP)= ; 执行指令JMP TABLE[BX]后,(IP)= ;

执行指令JMP [BX][SI]后,(IP)= 。

2、在1000H单元中有一条二字节指令JMP SHORT LAB,如果其中偏移量分别为30H、6CH、0B8H,则转向地址LAB的值分别为 ; ; ;

3、数据段中有以下定义:

ARRAY1 EQU 16H

ARRAY2 DW 16H

请指出下面两条指令的寻址方式:

MOV AX,ARRAY1; 寻址方式 。 MOV AX,ARRAY2; 寻址方式 。 4、下面两个语句的区别在于 、 。 X1 EQU 1000H

X2 =1000H

5、指令“AND AX,STR1 AND STR2”中,STR1和STR2是两个已赋值的变量,两个AND的区别是 、 。

6、指令LOOPZ/LOOPE是结果 或 发生转移的指令。而指令LOOPNZ/LOOPNE则是结果 或 发生转移的指令。

7、调用指令CALL可分为 、 、 和 等四种调用。

8、在汇编语言中,一个过程有NEAR和FAR两种属性。NEAR属性表明主程序和子程序 ,FAR属性表示主程序和子程序 。

9、串处理指令规定源寄存器使用 ,源串在 段中;目的寄存器使用 ,目的串必须在 段中。

10、 是过程定义结束伪指令,与 配套使用。 是段定义结束伪指令,与 配套使用。

三、选择题

1、执行下列程序,选择正确的结果:

MOV SP,2000H

MOV AX,0F0H MOV SI,1234H MOV DX,5678H PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX

HLT

(1)SP= ;

A)2000H B)1FFFH C)2001H D)1FFEH

(2)DH内容所在存储器的偏移地址为 ; A)1FFFH B)1FFEH

C)1FFDH D)1FFCH

(3)DL内容所在存储器的偏移地址为 ; A)1FFFH B)1FFEH C)2000H D)1FFCH (4)(AX)= ; A)0H B)78H C)0F0H D)56H (5)(DI)= 。 A)1234H B)5678H C)2000H D)00F0H (6)(DX)= ; A)5678H B)0ACF0H C)2B3CH D)0ABF0H (7)标志位ZF= 。

A)0 B)1 C)不定 D)无值

2、下面是多字节加法程序,第一个数和是8A0BH,第二个数是D705H。 DATA SEGMENT FIRST DB (1), (2),0H SECOND DB (3), (4) DATA

ENDS

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA

MOV DS,AX MOV CX, (5) (3) JMP DISPLACE[BX]

2、 设AX和BX寄存器中是有符号数,CX和DX寄存器中是无符号数,写出下列条件转移指令。

(1) CX值高于或等于DX值,则转移HIEQU (2) AX值大于BX值,则转移GREAT (3) CX值为0,则转移ZERO

(4) AX值小于或等于BX值,则转移SMAEQU (5) CX值低于或等于DX值,则转移LOWEQU (6) AX为负值,则转移NEGAT (7) AX为偶数,则转移IMAGE 3、 写出下列串操作指令所替代的指令序列。 (1) REP MOVSB (2) REP LODSB (3) REP STOSB (4) REP SCASB

五、是非判断题

程序在数据段中的定义如下: DATA NAMES

SEGMENT DB ‘ABCD’

MOV SI,0 (6)

NEXT: MOV AL,SECOND[SI]

ADC FIRST[SI],AL INC SI

LOOP NEXT MOV AL,0

ADC AL, (7) MOV AH,4CH

MOV FIRST[SI],AL

INT 21H CODE ENDS

END START

请选择正确的答案填入空格中: (1)A)8AH B)0BH C)D7H D)05H (2)A)8AH B)0BH C)D7H D)05H (3)A)8AH B)0BH C)D7H D)05H (4)A)8AH B)0BH C)D7H D)05H (5)A)3 B)2 C)1 D)4 (6)A)CLC B)CLD C)STC D)CLI (7)A)1 B)-1 C)0 D)0FFH

四、完成下列练习

1、 设(DS)=0300H,(CS)=0200H,(IP)=0100H,(BX)=1000H,DISPLACE=2000H,(4000H)=5000H,(6000H)=8000H 确定无条件转换指令的段内转移地址

(1) JMP BX (2) JMP [BX]

NAMET DW 20 DATA ENDS

请判断下列指令是否正确?正确的填‘A’,错误的填‘B’。

(1) MOV BX,OFFSET NAMES ( )

(2) MOV AL,[BX+2] ( )

( 3) MOV AX,NAMES ( )

(4) MOV AX,WORD PTR NAMES+1 ( ) (5) MOV AL,NAMET ( )

(6) MOV AL,BYTE PTR NAMET ( ) (7) MOV AX,DATA ( ) (8) MOV DS,AX ( )

(9) MOV AX,SEG NAMES ( ) (10) MOV BX,DATA ( )

六、请阅读下列程序,分析其功能或结果

1、 MOV AH,00 INT 16H

MOV AH,0AH MOV CX,00 MOV BH,00

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

INT 10H

2、 MOV AH,00 MOV AL,66 MOV DX,00 INT 17H

MOV AH,00 MOV AL,0DH INT 17H

3、 MOV AH,07 MOV AL,00 MOV BL,70H MOV CH,02 MOV CL,05 MOV DH,22 MOV DL,38

INT 10H

4、MESS DB ‘PRESS ANY KEY’,0DH,0AH,‘$’

MOV AH,09

MOV DX,SEG MESS MOV DS,DX

MOV DX,OFFSET MESS

生的名次。试编写程序,根据GRAD中的学生成绩,将排列的名次填入RANK数组中(提示:一个学生的名次等于成绩高于这个学生的人数加1)。 6. 试编写程序,它轮流测试两个设备的状态寄存器,只要一个状态寄存器的第0位为1,则与其相应的设备就输入一个字符;如果其中任一状态寄存器的第3位为1,则整个输入过程结束。两个状态寄存器的端口地址分别是0024和0036,与其相应的数据输入寄存器的端口则为0026和0038,输入字符分别存入首地址为BUFF1和BUFF2的存储区中。

7.编写一个程序,接收从键盘输入的10个十进制数字,输入回车符则停止输入,然后将这些数字加密后(用XLAT指令变换)存入内存缓冲区BUFFER。加密表为; 输入数字: 0,1,2,3,4,5,6,7,8,9 密码数字: 7,5,9,1,3,6,8,0,2,4

答案

一、回答下列问题 1、(1)C9H (2)1FH (3) 0FH 2、答案: DAT_SG

DAT_SG ;

STK_SG DW STK_SG ;

COD_SG MAIN ASSUME

SEGMENT PROC FAR

CS: COD_SG, DS: DAT_SG, SS: STK_SG

AX, DAT-SG DS, AX AH, HIGH_DAT

BH, AH DL, AH AH, 4CH 21H SEGEMNT ENDS SEGMENT 64 DUP(?) ENDS

HIGH_DAT DB 95

INT 21H

5、MOV AH,2

MOV DL,1

INT 21H

七、编写程序

1. 试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。

2. 编写程序,比较两个字符串STRING1和STRING2所含字符是否完全相同,若相同则显示

“MATCH”,若不同则显示“NO MATCH”。

3. 试编写程序,要求从键盘输入3个16进制数,并根据对3个数的比较显示如下信息:

(1)如果3个数都不相等则显示0;

(2)如果3个数中有2个数相等则显示2; (3)如果3个数都相等则显示3。

START: MOV

MOV MOV MOV MOV MOV INT

4. 已知整数变量A和B,试编写完成下述操作的程序:

(1)若两个数中有一个是奇数,则将该奇数存入A中,偶数存入B中;

(2)若两个数均为奇数,则两数分别加1,并存回原变量; (3)若两个数均为偶数,则两变量不变。

5. 把0~10010之间的30个数,存入首地址为GRAD的字数组中,GRAD+i表示学号为i+1的学生成绩。另一个数组RANK是30个学生的名次表,其中RANK+I的内容是学号为i+1的学

MAIN ENDP COD_SG ENDS END START 3、答案:

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

DATA SEGMENT TRING DB ‘Personal computer’ VALD DB 12,99 VALH DB 32H,0FAH VALZ DB 10 DUP(‘0’) VALW DW 20 DUP(?) 4、答案: (1) 1,表示BUFA所占的内存空间 (2) 20,表示STA中DUP前重复的次数。 5、非法标号: (1)因为‘.’只允许是标号的第一个字符 (2)第一个字符不能为数字 (3)不允许出现‘-’ (4)不能是保留字,如助记符 (5)不能有空格 6、答案: (1) 设置了4个字节 (2) 设置了2个字节 7、答案: MOV BX,TABLE_ADDR LEA BX,TABLE_ADDR 8、 答案: (1) 00048h (2) 00020h 9、答案: (1) 源和目的不能同为内存变量 (2) 两个类型不匹配 (3) LAB为标号不为符号常量 (4) JNZ可跳转到标号,不能跳转到变量。 ; 执行后(BX)=1234H ; 执行后(BX)=OFFSET TABLE_ADDR 三、选择题 1、(1)、D (2)、A (3)、B (4)、C (5)、A (6)、B (7)、A 2、(1)、B (2)、A (3)、D (4)、C (5)、B (6)、A (7)、C 四、完成下列练习 1、1000H,5000H,8000H 2、答案: (1) CMP CX,DX JNB HIEQU : : HIEQU: (2) CMP AX,BX JG GREAT : : GREAT: (3) CMP CX,0 JZ ZERO : : ZERO: (4) CMP AX,BX JLE SMAEQU : : SMAEQU: (5) CMP CX,DX JBE LOWEQU : : LOWEQU: (6) CMP AX,0 JS NEGAT : : NEGAT: (7) TEST AX,AX JP IMAGE : 二、填空题 1、1256H 、3280H、2450H 2、1030H,106CH,10B8H 3、立即数寻址方式、直接寻址方式 4、=可以二次赋值,EQU不能直接下次赋值,如果要二次赋值,必须使用PURGE解除后才行。 5、前一个AND是一个命令,后一个AND是一个运算符。 6、相等、零,不相等,不为零 7、段内直接,段内间接,段间直接,段间间接 8、在同一个段内,不在同一个段内。 9、SI,DS,DI,ES 10、ENDP ,必须与过程名,ENDS,必须与段名 共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

IMAGE:

3、答案:

(1)MOV DS,SEG SOURCE MOV ES,SEGT DEST MOV SI,OFFSET SOURCE MOV DI,OFFEST DEST MOV CX,N

AGAIN: MOV AL,[SI]

MOV ES:[DI],AL INC SI INC DI

LOOP AGAIN

(2)MOV DS,SEG SOURCE MOV SI,OFFSET SOURCE

MOV CX,N AGAIN: MOV AL,[SI] INC SI

LOOP AGAIN

(3) MOV ES,SEGT DEST

MOV DI,OFFEST DEST MOV CX,N AGAIN: MOV ES:[DI],AL INC DI

LOOP AGAIN

(4) MOV ES,SEGT DEST

MOV DI,OFFEST DEST MOV CX,N AGAIN: CMP AL,ES:[DI] INC DI

LOOP AGAIN

五、是非判断题

(1)A(2)B(3)B(4)A(5)B(6)A(7)A(8)A(9)A(10)A 六、请阅读下列程序,分析其功能或结果

1、读取键盘输入,并显示在显示器上。

2、 在打印机一输出字符‘B’,并回车。

3、屏幕初始化,左上角行号为2,左上角列号为5,右下角行号为22,右下角列号为38,使用整个空白窗口。

4、在屏幕上输出PRESS ANY KEY并换行回车。

5、在屏幕上输出1 七、编写程序

1、答案: abc: int cmp jb cmp ja sub mov mov int jmp stop: ret 2、答案: datarea segment

string1 db ?asfioa? string2 db ?xcviyoaf? mess1

db ?MATCH?,?$? mov 21h

ah,1

al,?a? stop stop

al,20h dl,al ah,2 21h

abc al,?z?

mess2 db ?NO MATCH?,?$? datarea ends prognam segment main proc far

assume cs:prognam,ds:datarea start: push ds sub push ax mov mov mov begin:

mov mov

cx, string2-string1 bx, mess1-string2 ax,datarea ds,ax es,ax ax,ax

cmp bx,cx jnz dispno lea dx,addr lea

si,string1

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

lea repe jne

di,string2 cmpsb dispno

ah,9

dx,mess1

mov ah,01 int 21h and shl or dec jne mov

al,0fh dx,cl dl,al di input [si],dx si,2 cx

mov lea

int 21h ret dispno:

mov lea

ah, 9 dx, mess2

add pop

int 21h ret main endp prognam 3、答案: data array data code

ends end start

loop begin comp: lea si,array

mov mov mov cmp jne add cmp jne

dl,0 ax,[si] bx,[si+2] ax,bx next1 dl,2 [si+4],ax next2 dx,2 [si+4],bx num dl,2 dx,3 disp dl,3 ah,2 dl,30h 21h

segment dw 3 dup(?) ends segment

next1:

main proc far assume cs:code,ds:data start: push ds sub

ax,ax

push ax mov ax,data mov mov lea

ds,ax cx,3 si,array

add

next2:

cmp jne add cmp jl

num:

begin: push cx

mov mov mov mov int mov

cl,4 di,4 dl, ? ? ah,02 21h dx,0

mov disp:

mov add int

ret

main endp code ends

end

start

input:

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

4、答案: dseg segment

a

dw ?

b dw ? dseg ends cseg segment mainproc far

assume cs:cseg,ds:dseg start:push ds

sub

ax,ax

push ax mov ax,dseg mov ds,ax mov mov xor test jz jz

test

ax,a bx,b ax,bx ax,0001 class bx,0001 exit

start:push ds sub

push ax mov mov mov mov mov push cx mov mov mov mov cmp

ax,ax ax,dseg ds,ax es,ax di,0 cx,30 cx,30 si,0

ax,grade[di] dx,0 grade[si],ax go_on dx si,2 loop2 cx dx rank[di],dx di,2 loop1

begin:

loop1:

begin: loop2:

jbe inc go_on: add

loop pop inc mov sdd loop ret

xchg bx,a mov b,bx jmp test jz

inc inc

exit bx,0001 exit b a

class:

mainendp cseg ends end 6、答案:

start

exit: ret mainendp cseg

ends

start

end 5、答案: dseg segment grade rank

dw 30 dup(?) dw 30 dup(?)

mov si, 0 mov di, 0 in al, 0024h test al, 08 jnz exit in al,0036h test al, 08 jnz exit

in al, 0024h test al, 01 jz

dev2

test12:

dseg ends cseg segment mainproc far

assume cs:cseg, ds:dseg, es:dseg

dev1:

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

:号----------------------学 :名姓 ---------------------------------------------装 :级班业专 ----------------------------------------订 线-

in al, 0026h mov buffer[si], al inc si 一、单项选择(在备选答案中选出一个正确答案,并将其号码填得分 dev2: in al, 0036h 在题干后的括号内。每题2分,共30分) 评卷人 test al, 01 1 .某微机最大可寻址的内存空间为16MB,其CPU地 jz test12 址总线至少应有( )条。 in al, 0038h A. 32 mov buff2[di],al B. 16 inc di C. 20 jmp test12 D. 24 exit: ret 2 .用8088CPU组成的PC机数据线是( )。 7、答案: A. 8条单向线 scode db 7,5,9,1,3,6,8,0,2,4 B. 16条单向线 buffer db 10 dup(?) C. 8条双向线 ; … … D. 16条双向线 mov si,0 3 .微处理器系统采用存储器映像方式编址时存储单元与I/O端口是通过( ) mov cx,10 来区分的。 lea bx,scode A. 不同的地址编码 input: mov ah,01 B. 不同的读控制逻辑 int 21h C. 不同的写控制逻辑 cmp al,0ah D. 专用I/O指令 jz exit 4 .要禁止8259A的IR0的中断请求,则其中断屏蔽操作指令字OCW1应为( )。 and al,0fh A. 80H xlat B. 28H mov buffer[si],al C. E8H inc si D. 01H loop input 5 .在8086环境下,对单片方式使用的8259A进行初始化时,必须放置的初始化命令 exit: ret 字为( )。 A. ICW1,ICW2,ICW3 2010-2011学年度第二学期 B. ICW1,ICW2,ICW4 C. ICW1,ICW3,ICW4 《微机原理与接口技术》课程期末考试试卷(A卷,考试) D. ICW2,ICW3,ICW4 6 .6166为2Kx8位的SRAM芯片,它的地址线条数为( )。 命题教师 审核人: 适用年级专业: A. 11 B. 12 C. 13 大项 一 二 三 四 五 六 七 总分 统分人 D. 14 得分 7 .在计算机系统中,可用于传送中断请求和中断相应信号的是( )。 A. 地址总线 共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

B. 数据总线 C. 控制总线 D. 都不对

8 .段寄存器装入2300H,该段的结束地址是( )。 A. 32FFFH B. 23000H C. 33FFFH D. 33000H

9 .在进入DMA工作方式之前,DMA控制器当作CPU总线上的一个( )。 A. I/O设备 B. I/O接口 C. 主处理器 D. 逻辑高

10 .在8086宏汇编过程中不产生指令码,只用来指示汇编程序如何汇编的指令是 ( )。 A. 汇编指令 B. 宏指令 C. 机器指令 D. 伪指令

11 .中断向量表占用内存地址空间为( )。

A. 00000H~003FFH B. 00000H~000FFH C. 00000H~00100H D. FFF00H~FFFFFH

12 .实现CPU与8259A之间信息交换是( )。

A. 数据总线缓冲器 B. 级联缓冲/比较器 C. 读写控制电路

D. 数据总线缓冲器与读写控制电路

13 .Intel 8253的最大输入时钟频率是( )。 A. 5MHz B. 2MHz C. 1MHz D. 4MHz

14 .完成两数相加后是否溢出的运算,用( )标志位判别。

A. ZF B. IF

共 8 页,第 !语法错误,3 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,3 页

C. OF D. SF

15 .8255A的方式选择控制字应写入( )。 A. A口 B. B口 C. C口 D. 控制口

二、填空题(把答案填写在题中横线上,每空1分,共20分)

得分 1 . 8086/8088CPU的数据线和地址线是以_____________ 评卷人 方式轮流使用的。

2 . CPU中的总线接口部件BIU,根据执行部件EU的要

求,完成_____________与 _____________或____________的数据传送。 3 . 8086中的BIU由_____________个_____________位段寄存器、一个_____________ 位指令指针、_____________字节指令队列、_____________位地址加法器和控制电路 组成。 4 . 8086/8088构成的微机中,每个主存单元对应两种地址:_________和__________。 5 . 对于8259A的中断请求寄存器IRR,当某一个IRi端呈现_____________时,则表 示该端有中断请求。

6 . 若8259A中ICW2的初始值为40H,则在中断响应周期数据总线上出现的与IR5对 应的中断类型码为_____________。

7 . 在存储器的层次结构中,越远离CPU的存储器,其存取速度_____________,存储 容量_____________,价格_____________。

8 . 存储器的存取速度可用_____________和_____________两个时间参数来衡量,其 中后者比前者大。

9 . 中断返回指令IRET总是排在_____________。

10 .若8255A的系统基地址为2F9H,且各端口都是奇地址,则8255A的三个端口地址 为_____________。

三、综合题(第1、3题各10分,第2、4题各15分,共50分) 1 .存储器系统连接如下图,请分别写出图中第一组(1#、

得分

2 . 计数器/定时器8253,振荡器(频率为1MHZ)连线如下图所示,其中振荡器的脉冲 输出端接通道0的计数输入端CLK0,设8253的端口地址为180H~186H。

2#)、第二组(3#、4#)的地址分配范围。(写出具体步骤) 评卷人 共 8 页,第 !语法错误,1 页 学生答题注意:勿超黑线两端;注意字迹工整。 共 8 页,第 !语法错误,1 页

本文来源:https://www.bwwdw.com/article/6n5g.html

Top