微机原理及接口第三章复习
- 格式:doc
- 大小:41.00 KB
- 文档页数:4
微型计算机原理和接口技术第三章课后答案本文回答了微型计算机原理和接口技术第三章的课后题目,涵盖了数字逻辑电路、组合逻辑电路、时序逻辑电路和存储器等内容。
1. 数字逻辑电路1.1. 逻辑电路和数字逻辑电路的基本概念逻辑电路是由逻辑门(与门、或门、非门等)和触发器等基本逻辑元件组合而成的电路。
数字逻辑电路是逻辑电路在数字系统中的应用,主要用于实现数字信号的逻辑运算和信号的转换等功能。
1.2. 数字逻辑门电路的组合和简化数字逻辑电路中常见的逻辑门有与门(AND)、或门(OR)、非门(NOT)等。
这些逻辑门可以通过组合和简化来构造更复杂的逻辑电路,例如与非门(NAND)、或非门(NOR)等。
1.3. 数字逻辑电路的时序特性数字逻辑电路的时序特性主要包括延迟时间、上升时间和下降时间等。
延迟时间表示信号经过电路的传播所需的时间,上升时间和下降时间表示信号从一个逻辑状态到另一个逻辑状态所需的时间。
2. 组合逻辑电路2.1. 组合逻辑电路的定义和特点组合逻辑电路是由多个逻辑门组合而成的电路,输入信号直接决定输出信号,不涉及时钟信号和状态存储。
2.2. 组合逻辑电路的设计方法组合逻辑电路的设计方法主要有真值表法、卡诺图法和特征方程法。
真值表法通过列出输入输出的真值表来进行设计,卡诺图法通过画出卡诺图进行化简,特征方程法通过建立逻辑方程进行设计。
2.3. 组合逻辑电路的应用组合逻辑电路广泛应用于数字系统中,包括逻辑运算、数据选择、数据的编码和解码等功能。
3. 时序逻辑电路3.1. 时序逻辑电路的定义和特点时序逻辑电路是由触发器和组合逻辑电路组合而成的电路,通过时钟信号来控制触发器的状态转换。
时序逻辑电路具有状态存储的功能,可以实现存储和记忆功能。
3.2. 触发器和时序逻辑电路的设计方法触发器是时序逻辑电路的基本组件,常见的触发器包括SR 触发器、D触发器和JK触发器等。
时序逻辑电路的设计方法主要是通过状态转换图、状态转移表和重建方程等方法进行设计。
第三章3-1选择题1、MOVX A,@DPTR指令中源操作数的寻址方式是(B)(A)寄存器寻址(B)寄存器间接寻址(C)直接寻址(D)立即寻址2.ORG 0003HLJMP 2000HORG 000BHLJMP 3000H 当CPU响应外部中断0后,PC的值是(B)(A)0003H (B)2000H (C)000BH (D)3000H3.执行PUSH ACC指令,MCS-51完成的操作是(A)(A)SP+1 SP (ACC)(SP)(B)(ACC)(SP)SP-1 SP(B)(C)SP-1 SP (ACC)(SP) (D)(ACC)(SP)SP+1 SP4、LCALL指令操作码地址是2000H,执行完相子程序返回指令后,PC=(D)(C)2000H (B)2001H (C)2002H (D)2003H5、51执行完MOV A,#08H后,PSW的一位被置位(D)(A)(A)C (B)F0 (C)OV (D)P6、下面条指令将MCS-51的工作寄存器置成3区(B)(A)MOV PSW,#13H (B)MOV PSW,#18H(B)SETB PSW.4 CLR PSW.3 (d) SETB PSW.3 CLR PSW.47、执行MOVX A,DPTR指令时,MCS-51产生的控制信号是(C)(D)/PSEN (B)ALE (C)/RD (D)/WR8、MOV C,#00H的寻址方式是(A)(A)位寻址(B)直接寻址(C)立即寻址(D)寄存器寻址9、ORG 0000HAJMP 0040HORG 0040HMOV SP,#00H当执行完左边的程序后,PC的值是(C)(A)0040H (B)0041H (C)0042H (D)0043H10、对程序存储器的读操作,只能使用(D)(A)MOV指令(B)PUSH指令(C)MOVX指令(D)MOVC指令3-2判断题。
4.MCS-51的相对转移指令最大负跳距是127B。
微机原理与接口技术第三章-练习题第三章练习题一、问答题1、DB1 DB 5 DUP[ 3 DUP(2),2 DUP(3)]…MOV AL,DB1+4MOV BX,WORD PTR DB1[3]上面2条指令执行后,(AL)=?(BX)=?2、下面程序段执行后,寄存器DS,SI的内容分别是多少?ADR DW 1234H,5678H,0ABCDH…LDS SI,ADR+1MOV BX,WORD PTR DB1[3]3、下面程序段执行后,寄存器AX,BL的内容是什么?ARY_W DW 10H DUP(1234H)ARY_B EQU BYTE PTR ARY_W…MOV AX,ARY_W+2MOV BL,ARY_B+24、有下列数据段:DATA SEGMENTORG 30HCON EQU 10HS1 DB ‘IBM PC’DB 0AH,0DHCONT EQU $-S1S2 DW ‘IB’,‘M’,‘PC’,0A0DHDATA ENDS上述数据段中S1,S2的偏移量分别是多少?CONT的值和S2+5字节单元的内容是多少?5、设(DX)=80,CF=1MOV AX,0AA50HXOR AH,0FFHOR DH,55HSBB AX,DX上述指令序列执行后,(AX)=?,(DX)=?6、设AX,BX,CX,中均有数据0AAH,下面3条指令执行后,AX,BX,CX中的内容分别是多少? AND AX,-2OR BX,-2XOR CX,-27、VA_VAR DW 45678…MOV AX,DA_VARMOV DX,DXMOV BX,10LOP: XOR DX,DXDIV BXPUSH AXCMP DX,0JNE LOP执行完上述程序段后,向堆栈压了几个数据?按压入的先后顺序指出这些数据。
如果PUSH AX指令换成PUSH DX,那么向堆栈压入了几个数据?按压入的先后顺序指出这些数据。
8、DATA1 EQU BYTE PTR DATA2DATA2 DW 0A987H,3456H…SAR DATA+1,1MOV AX,DATA2+1SAL DATA2+1,1MOV BX,DATA2+1上述指令序列执行后,(AX)=?,(BX)=?,CF=?,以DATA2为首址的两个字单元内容分别是多少?9、MOV AL,0FHXOR AL,0FFHMOV CL,7SHR AL,CL上述几条指令执行后,(AL)=?如将SHR指令换成ROR或RCR,那么AL中的内容分别是多少?10、以W1为首址的各字节单元中分别存有数字0~9。
1.已知DS=2000H,有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT的偏移地址为1200H。
执行下列指令后,寄存器AX、BX、SI的值分别是多少?
MOV BX,OFFSET COUNT
MOV SI,[BX]
MOV AX,COUNT[SI][BX]
2.写出每条指令执行后,寄存器的内容
MOV AX,0ABCH
DEC AX
AND AX,00FFH
MOV CL,4
SAL AL,1
MOV CL,AL
ADD CL,78H
PUSH AX
POP BX
3.设若内存单元DATA在数据段中偏移量为24C0H处,24C0H~24C3H单元中依次存放着55H、66H、77H、88H。
下列几条指令执行后,寄存器AX、BX、CL、SI、DS的值分别是多少?
MOV AX,DATA
LEA SI,DATA
MOV CL,[SI]
LDS BX,DATA
4.若AX=6264H,CX=0004H,执行下列指令后,寄存器AX的值分别是多少?
AND AX,AX
JZ DONE
SHL CX,1
ROR AX,CL
DONE: OR AX,1234H
5.已知有某字串BUF1的首址为0000H,BUF2的首址为0010H,数据段与附加段重合。
欲从BUF1处开始将10个字数据顺序传送至BUF2处,试在下面程序段的空白处填上适当的指令或操作数以实现上述功能。
LEA SI,BUF1
ADD SI,
LEA DI,BUF2
STD
MOV CX,
REP MOVSW
6.已知附加段中有一块长50个字的数据区,首址为DEST。
欲编程将它们全部初始化
为0FFFFH值,试在下面程序段的空白处填上适当的指令或操作数,以实现上述功能。
DI,DEST
MOV CX,
CLD
MOV AL,0FFH
7.下面的程序执行后,DX、AX的值分别是多少?
;以X为首址的字单元中的数据依次为1234H、5678H
;以Y为首址的字单元中的数据依次为8765H、4321H
……
LEA SI,X
LEA DI,Y
MOV DX,[SI+2]
MOV AX,X
ADD AX,X
ADC DX,[SI+2]
CMP DX,[DI+2]
JL L2
CMP AX,Y
JL L1
JMP EXIT
L1:MOV AX,1
JMP EXIT
L2:MOV AX,2
EXIT:……
1.已知DS=2000H,有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT的偏移地址为1200H。
执行下列指令后,寄存器AX、BX、SI的值分别是多少?
MOV BX,OFFSET COUNT
MOV SI,[BX]
MOV AX,COUNT[SI][BX]
答:执行结果为BX=1200H,SI=1000H,AX=3040H。
2.写出每条指令执行后,寄存器的内容
MOV AX,0ABCH
DEC AX
AND AX,00FFH
MOV CL,4
SAL AL,1
MOV CL,AL
ADD CL,78H
PUSH AX
POP BX
3.设若内存单元DATA在数据段中偏移量为24C0H处,24C0H~24C3H单元中依次存放着55H、66H、77H、88H。
下列几条指令执行后,寄存器AX、BX、CL、SI、DS的值分别是多少?
MOV AX,DATA
LEA SI,DATA
MOV CL,[SI]
LDS BX,DATA
答:执行结果为AX=6655H,BX=6655H,CL=55H,SI=24C0H,DS=8877H。
4.若AX=6264H,CX=0004H,执行下列指令后,寄存器AX的值分别是多少?
AND AX,AX
JZ DONE
SHL CX,1
ROR AX,CL
DONE: OR AX,1234H
答:ROR后,AX=6462H,AX=7676H
5.已知有某字串BUF1的首址为0000H,BUF2的首址为0010H,数据段与附加段重合。
欲从BUF1处开始将10个字数据顺序传送至BUF2处,试在下面程序段的空白处填上适当的指令或操作数以实现上述功能。
LEA SI,BUF1
ADD SI,18
LEA DI,BUF2
ADD DI,18
STD
MOV CX,10
REP MOVSW
6.已知附加段中有一块长50个字的数据区,首址为DEST。
欲编程将它们全部初始化为0FFFFH值,试在下面程序段的空白处填上适当的指令或操作数,以实现上述功能。
LEA DI,DEST
MOV CX,100
CLD
MOV AL,0FFH
REP STOSB
7.下面的程序执行后,DX、AX的值分别是多少?
;以X为首址的字单元中的数据依次为1234H、5678H
;以Y为首址的字单元中的数据依次为8765H、4321H
……
LEA SI,X
LEA DI,Y
MOV DX,[SI+2]
MOV AX,X
ADD AX,X
ADC DX,[SI+2]
CMP DX,[DI+2]
JL L2
CMP AX,Y
JL L1
JMP EXIT
L1:MOV AX,1
JMP EXIT
L2:MOV AX,2
EXIT:……
答:执行结果为AX=2,DX=0ACF0H。