微机原理复习题(教师版) 联系客服

发布时间 : 星期三 文章微机原理复习题(教师版)更新完毕开始阅读565e4a0833687e21af45a964

19、已知:AL=9AH,BL=D6H,执行指令ADD AL,BL 后,AL= 、BL= 、ZF= 、OF= 。【70H,D6H,0,1】 注:[ P39:OF=D7C⊕D6C ,(D7C=1)⊕(D6C=0)=1 ] 20、在8086微处理器中,指令分配给寄存器SP的默认段寄存器是_______。【SS】

21、设堆栈指针(SS)=2000H,(SP)=1000H,在执行PUSH AX指令后,(SS)= ____ (SP)=_____。【2000H,0FFEH】 22、某8086微处理器系统中设计了一个容量为32KB的SRAM存储器,约定该存储器的起始地址为40000H,则该存储器的末地址为________。【47FFFH】 注:段64KB地址为:0000H~FFFFH,32KB地址为:10000H/2-1=7FFFH 23、EPROM2732有4K个地址单元,当从F0000H开始分配地址时,它的最后一个单元地址为 【F0FFFH】 24、在某8086系统中,设DS = 1000H,CS=2000H,数据段和代码段的长度都为64KB,则数据段的起始地址为 ,代码段的结束地址为 。【10000H,2FFFFH】

注:数据段地址范围:10000H~1FFFFH,代码段地址范围:20000H~2FFFFH

25、静态RAM的基本存储电路,是由6个MOS管组成的________来存储信息的;动态RAM芯片是以MOS管栅极________是否充有电荷来存储信息的。【触发器,电容】

26、若对6116芯片进行读操作,则该芯片的CE= ,WE= ,OE= 。【0,1,0】

27、8086/8088CPU可访问两个独立的地址空间,一个为I/O地址空间,其大小为________字节;另一个为________,其大小为____________字节。【64K,存储器地址空间,1M】

28、串操作LODS指令,是用来将源串由 寄存器所指向的元素复制到AX或者AL中,并修改其内容指向下一元素。源串的寻址采用 段寄存器。【SI,DS】

29、指令LOOPE/LOOPZ的功能是先将CX减1,若 且 发生循环,而指令LOOPNE/LOOPNZ则是CX减1后若 且 时循环【ZF=1,CX≠0,ZF=0,CX≠0】

30、随机中断源可分为外部设备、 和 三种。【实时时钟,故障源】

31、8086中断系统中,优先权最低的内部中断是 ;优先权最高的外部中断是 。【单步中断,NMI中断】 32、INT 21H中断,其中断服务子程序的入口地址在中断向量表中的物理地址范围为 ~ 。【00084H,00087H】

N*4+0~N*4+3,N=21H

33、静态RAM不需要刷新电路, 需要刷新电路。【动态RAM】

34、外设与CPU交换数据的方式为 、 、 ,其中 速度最快。【程序传送,中断传送,DMA传送,DMA传送】

35、存储器由 、 、 三部分组成。【存储体,地址选择电路,读写电路与控制电路】

36、8086 CPU利用 和 两个引脚的组合可以实现对存储器高、低位库的选择。【BHE,A0】 37、若8086CPU向物理地址为00052H单元写入一个字节,则写入过程中,BHE= ,A0= 。【1,0】

注:∵ 00052H是偶地址,∴ 低地址库(偶地址库)库选线是A0

38、当用字长较短、容量较小的存储器芯片组织一定字长的、存储容量较大的存储器时需要进行两种形式的扩充: 和 。【位数扩充,地址扩充】

39、在8086/8088指令系统中,用来开中断的指令为 ,用来关中断的指令为 。【STI,CLI】

40、 是过程定义结束伪指令,其前面需要加 配套使用。 是段定义结束伪指令,其前面需要加 配套使用【ENDP、过程名、ENDS、段名称】

三、判断题

1、8086/8088分时复用总线AD15-AD0传送地址时是单向的三态输出(√)P48 2、8086/8088分时复用总线AD15-AD0传送数据时是双向的三态输入/输出(√)

3、8086/8088微处理器要求复位(RESET)脉冲宽度有效维持时间至少是6T(×)P50 (至少是4T) 4、8086的内存空间和I/O空间是单独编址的,都是1MB(×) (内存空间是1MB,I/O空间是,64KB)

5、8086/8088微处理器CLK引脚输入时钟信号是由8286提供的(×) (8284) 6、8086/8088标志寄存器共有16位,每一位都有含义(×) (只定义了9位) 7、8086/8088逻辑段不允许段的重叠和交叉(×) (可以) 8、立即寻址方式不能用于目的操作数字段(√) 9、不能给段寄存器进行立即数方式赋值(√) 10、SP的内容可以不指向堆栈的栈顶(×) (必须)

11、CF位可以用来表示有符号数的溢出(×) (有符号数溢出位是OF)

12、执行SBB AX,AX指令后,AX的内容一定为零(×) AX AX-AX-CF,若CF=1,则AX≠0 13、条件转移指令只能使用于段内直接短转移(√) 14、判断下列指令是否正确

(1)SHL AX, 3 (2)PUSH BL (3)POP CS (4)DIV 10

(×) (移位次数>1时,由CL给出) (×) (BX,8086CPU堆栈的操作是16位的)

(×) (不能用栈操作的方法,随意改变CS寄存器的内容) (×) (除数不能以立即数的形式给出)

(×) (源操作数寻址要么是变址寻址[SI] 或 [DI],

要么是基址寻址[BX] 或 [BP]+[SI] 或 [DI]变址)

(7)LEA DI, [BX][SI]

(√) (√) (√)

(×) (I/O口地址间址寄存器是DX)

(8)MOV DI, OFFSET[BX+DI] (10)OUT CX, AL

(5)MUL AX, BX (×) (乘数AX是隐含寻址) (6)MOV AX,[SI+DI]

(9)MOV WORD PTR[1000H], 1000H

15、EEPROM芯片写入的内容,可以通过紫外线擦除(×) (在线,电可擦写) 16、掩膜ROM只读存储器的内容是不可以改写的(√)

17、SRAM与DRAM相比,前者的外围电路更复杂(×) (后者) 18、单管动态存储电路的读出操作是破坏性读出(√)

19、FLASH Memory(闪存)不属于只读存储器(×) (属于)

20、内部中断的优先权总是高于外部中断(×) (不一定,如:单步中断的优先级低于外部中断) 21、8086在响应中断时,将CS、IP和标志寄存器的内容顺序入栈(×) (入栈顺序为:F、CS、IP) 22、当8086处在单步工作方式时,必须为1的标志位是OF(×) (TF) 23、所有中断服务子程序的最后一条可执行语句必须是RET指令(×) (IRET) 24、中断响应后保护断点的目的是为了能从中断服务子程序返回被中断的地方(√)

四、程序分析题

1、阅读下列程序段,设初值AX=0119H,指出每条指令执行以后有关寄存器的内容。

MOV CH, AH ; CH=01H ADD AL, AH DAA

; AL=1AH ; AL=20H

; AL=01H, CH=20H ; AL=35H ; AL=35H ; AH=35H ; AL=20H

XCHG AL, CH ADC AL, 34H DAA

MOV AH, AL MOV AL, CH HLT

2. 阅读下列程序段,指出每条指令执行以后有关寄存器的内容。

MOV AX, 0ABCH

; AX=0ABCH

DEC AX MOV CL, 4 SAL AL, 1

; AX=0ABBH ; AX=00BBH ; CL=4

; AL=76H (注:指令执行前,逻辑左移1次,AL= BBH) ; CL=76H

; CL=EEH (注:指令执行前,CL=76H) ; AX=0076H (注:指令执行后不影响AX内容)

; BX=0076H (注:指令执行前,桟顶单元的内容为0076H)

AND AX, 00FFH

MOV CL, AL ADD CL , 78H PUSH AX POP BX 3、 CLC

MOV CX, 0FFFFH

ADD CX, 1 (注: FFFFH+1=10000H,CX=0000H, 有溢出: CF=1) 执行上面程序段后,(CX)= (ZF)= (CF)= 【0, 1, 1】 4、 MOV AL, 64H

MOV BL,-1 ;(注:BL=-1= FFH)

CMP AL, BL ;(注:∵(AL=64H) > (BL=-1),∴CF=0) ADD AL, AL ;(注:∵(AL=64H),∴64H+64H=C8H)

执行本程序后,(AL)= (BL)= (CF)= 【C8H,FFH,0】 5、 MOV AL, 25H

MOV DATA, 57H

AND AL, DATA ;(注:(AL=25H) ∧ (DATA=57H) =05H→AL ) ADD AL, AL ;(注:∵AL=05H,∴05H + 05H=0AH→AL) DAA ;(注:∵AL=0AH,∴AL=10H,AF=1 ) 执行本程序后,(AL)= (ZF)= (CF AF)= 【10H,0,1】 6、假设从地址0600H开始的存储区,存储着31H,32H,33H,34H。现有如下程序段:

MOV SI,0600H (1) MOV DI,0700H MOV DX,0002H

CYCLE: MOV AL,[SI] (2)

AND AL,0FH INC SI ADD AL,[SI]

MOV [DI],AL (3) INC SI INC DI DEC DX JNZ CYCLE HLT

则(1)请写出程序段中(1)(2)(3)划线所示的指令中源操作数的寻址方式。

(2)程序段执行后,问SI、DI和AL寄存器的内容分别是多少?存储器单元(0700H)=? 【 (1)立即数寻址(2)变址寻址(3)寄存器寻址】

【 (SI)=0604H (DI)=0702H (AL)=37H (0700H)=33H】

7、设有100个字节数据(无符号数),存放在数据段中EA=2000H的存储区内。以下程序应能从该数据区中找出最大的一个数并存入同一数据段EA=2100H的单元中,请完成该程序(在划线处填入适当的语句)

MAX:

MOV BX, MOV AL, [BX]

2000H

;取第一个数

MOV CX, INC BX

CMP AL, [BX] MOV AL, [BX]

JNZ ;置循环次数 ;调整指针 ;比较两个数大小

;若大于等于,跳到CON1,AL中始终为大数, ;若小于,将大数送入AL中

;循环,继续下一个数的比较

LOOP1 [2100H]

JAE CON1

99

LOOP1:

CON1: DEC CX

MOV , AL

8、若CPU中各寄存器及RAM参数如图所示,试求独立执行每小题对应的指令后,寄存器与内存单元的内容。(每小题指令执行前,寄存器的状态都处于如图所示的状态)

CPU寄存器CSDSSSESIPDISI3000H2050H50A0H0FFFH0000H000AH0008HFFFFH0004H0000H17C6H8094H1403H1CXBXSPDXAXBPCF2050CH20506H20507H内存06H00H87H15H37HC5H2FH

(1)MOV DX, [BX+2] (2)PUSH DX

; DX = 0006H ; BX= 0004H ; SP = FFFEH ;

; CX= 0004H ; BX= 0004H ; AX= 8094H ; AL= 87H

; AL= CCH ;AL=(AL= 94H)+(DI=37H)+ (CF=1) ; AL= 32H ; SI= 0009H ; AH= 84H

; IP= 17C6H ;(段内间接转移,将DX的内容送IP)

(3)MOV CX, BX (4)TEST AX, 0001H (5)MOV AL, [SI] (6)ADC AL, [DI]

DAA (7)INC SI

(8)XOR AH, BL (9)JMP DX

9、请在图中正确填写执行下列伪指令后数据区的内容。

DATA1 DB DATA3 DB DATA4 DB

10、现有(DS)=2000H,(BX)=0100H,(SI)=0002H,(20102H)=12H,(21200H)=2AH,(21201H)=4CH,填入下列指令执行后AX寄存器的内容,令中源操作数的寻址方式。 (1)MOV AX, 1200H 立即寻址】

(2)MOV AX, [1200H] H,直接寻址】

(3)MOV AX, [BX+1100H] H,基址寻址】

(4)MOV AX, [BX][SI]

; AX=

01H,02H ?1?,?2? 3 DUP(2,1)

DATA1 DATA2 DATA3

01H 02H 01H 00H 02H 00H 31H 32H 02H 01H 02H 01H 02H 01H

【【

4C2A 4C2A

【1200H,(20103H)=34H,并指出在每条指

DATA2 DW 01H,02H

;寻址方式

DATA4

; AX= ;寻址方式

; AX= ;寻址方式

; AX= ;寻址方式

【3412 H,