第一篇:微机原理答案.
部分习题答案(顾三乐整理编辑版)
第二章 计算机中的数值和编码
将十进制数转换为二进制和十六进制
(1)129.75=1000 0001.11B=81.CH
(2)218.8125=1101 1010.1101B=DA.DH(3)15.625=1111.101B=F.AH
(4)47.15625=10 1111.0010 1B=2F.28 H
将下列二进制数转换为十进制和十六进制
(1)111010 B=58 =3A H
(2)1011 1100.111B= 188.875= BC.E H(3)0.1101 1B=0.84375 =0.D8H
(4)11110.01 B=30.25 =1E.4H
3、完成下列二进制数的加减法运算
(1)1001.11+100.01=1110.00(2)1101010110.1001-01100001.0011=01110101.0110(3)00111101+10111011=11111000(4)01011101.0110-101101.1011=101111.1011
4、完成下列十六进制数的加减法运算
(1)745CH+56DFH=D14B H
(2)ABF.8H-EF6.AH=9C28.E H
(3)12AB.F7+3CD.05=1678.FC H
(4)6F01H-EFD8H=7F29 H
5、计算下列表达式的值
(1)128.8125+10110101.1011B+1F.2H=101010101.1010B
(2)287.68-10101010.11H+8E.EH=103.CEH
(3)18.9+1010.1101B+12.6H-1011.1001=36.525
6、选取字长n为8位和16位两种情况,求下列十进制数的补码。
(1)X=-33的补码: 1101 1111,***1(2)Y=+33的补码: 0010 0001,0000 0000 0010 0001(3)Z=-128的补码:1000 0000,1111 1111 1000 0000(4)N=+127的补码:0111 1111,0000 0000 0111 1111(5)A=-65的补码: 1011 1111,1111 1111 1011 1111(6)B=+65的补码: 0100 0001,0000 0000 0100 0001(7)C=-96的补码: 1010 0000,1111 1111 1010 0000(8)D=+96的补码: 0110 0000,0000 0000 0110 0000
7、写出下列用补码表示的二进制数的真值
(1)[X]补=1000 0000 0000 0000 H
X=-1000 0000 0000 0000 H=-32768
(2)[Y]补=0000 0001 0000 0001 H
Y=+0000 0001 0000 0001 H=+257
(3)[Z]补=1111 1110 1010 0101 H
Z=-0000 0001 0101 1011 H=-347
(4)[A]补=0000 0010 0101 0111 H
A=+0000 0010 0101 0111 H=+599
8、设机器字长为8位,最高位为符号位,试对下列格式进行二进制补码运算,并判断结果是否溢出。
(1)43+8
∵
[43]补=00101011B,[8]补=00001000B
∴ [43]补+[8]补=00101011B+00001000B=00110011B=33H
00101011B
+ 00001000B
00110011B
∵
CS=0,CD=0,OF=CS⊕CD=0⊕0=0
∴
无溢出
(1)43+8
33H(无溢出)
(2)-52+7 D3 H(无溢出)
(3)60+90
H(溢出)
(4)72-8
H(无溢出)
(5)-33+(-37)0BA H(无溢出)
(6)-90+(-70)
H(溢出)
(7)―9―(―7)FE H
(无溢出)
(8)60-90
E2 H(无溢出)
9、设有变量x=11101111B,y=11001001B,z=01110010B,v=01011010B,试计算x+y=?,x+z=?,y+z=?,z+v=?,请问:① 若为无符号数,计算结果是否正确?② 若为带符号补码数,计算结果是否溢出?
x+y = 11101111B+11001001B=10111000B=1B8 H
1110 1111 B
+ 1100 1001B
1011 1000B ① 若为无符号数
② 若为带符号补码数
∵ CF=1 ∴ 不正确
∵ CF=1,DF=1 OF=0
∴ 不溢出
x+y = 0B8 H x+z = 61 H
y+z = 3B H
z+v = 0CC H
①
不正确
不正确
不正确
正确
② 不溢出
不溢出
不溢出
溢出
第三章
80X86微处理器
1.简述8086/8088CPU中BIU和EU的作用,并说明其并行工作过程。
答:(1)BIU的作用:计算20位的物理地址,并负责完成CPU与存储器或I/O端口之间的数据传送。
(2)EU的作用:执行指令,并为BIU提供所需的有效地址。
(3)并行工作过程:当EU从指令队列中取出指令执行时,BIU将从内存中取出指令补充到指令队列中。这样就实现了取指和执行指令的并行工作。
2.8086/8088CPU内部有哪些寄存器?其主要作用是什么? 答:8086/8088CPU内部共有14个寄存器,可分为4类:数据寄存器4个,地址寄存器4个,段寄存器4个和控制寄存器2个。其主要作用是:
(1)数据寄存器:一般用来存放数据,但它们各自都有自己的特定用途。
AX(Accumulator)称为累加器。用该寄存器存放运算结果可使指令简化,提高指令的执行速度。此外,所有的I/O指令都使用该寄存器与外设端口交换信息。
BX(Base)称为基址寄存器。用来存放操作数在内存中数据段内的偏移地址,CX(Counter)称为计数器。在设计循环程序时使用该寄存器存放循环次数,可使程序指令简化,有利于提高程序的运行速度。
DX(Data)称为数据寄存器。在寄存器间接寻址的I/O指令中存放I/O端口地址;在做双字长乘除法运算时,DX与AX一起存放一个双字长操作数,其中DX存放高16位数。
(2)地址寄存器:一般用来存放段内的偏移地址。
SP(Stack Pointer)称为堆栈指针寄存器。在使用堆栈操作指令(PUSH或POP)对堆栈进行操作时,每执行一次进栈或出栈操作,系统会自动将SP的内容减2或加2,以使其始终指向栈顶。
BP(Base Pointer)称为基址寄存器。作为通用寄存器,它可以用来存放数据,但更经常更重要的用途是存放操作数在堆栈段内的偏移地址。
SI(Source Index)称为源变址寄存器。SI存放源串在数据段内的偏移地址。
DI(Destination Index)称为目的变址寄存器。DI存放目的串在附加数据段内的偏移地址。
(3)段寄存器:用于存放段地址
CS(Code Segment)称为代码段寄存器,用来存储程序当前使用的代码段的段地址。CS的内容左移4位再加上指令指针寄存器IP的内容就是下一条要读取的指令在存储器中的物理地址。
DS(Data Segment)称为数据段寄存器,用来存放程序当前使用的数据段的段地址。DS的内容左移4位再加上按指令中存储器寻址方式给出的偏移地址即得到对数据段指定单元进行读写的物理地址。
SS(Stack Segment)称为堆栈段寄存器,用来存放程序当前所使用的堆栈段的段地址。堆栈是存储器中开辟的按“先进后出”原则组织的一个特殊存储区,主要用于调用子程序或执行中断服务程序时保护断点和现场。
ES(Extra Segment)称为附加数据段寄存器,用来存放程序当前使用的附加数据段的段地址。附加数据段用来存放字符串操作时的目的字符串。
(4)控制寄存器
IP(Instmcdon Pointer)称为指令指针寄存器,用来存放下一条要读取的指令在代码段内的偏移地址。用户程序不能直接访问IP。
FLAGS称为标志寄存器,它是一个16位的寄存器,但只用了其中9位,这9位包括(个状态标志位和3个控制标志位。它用来反映算术运算和逻辑运算结果的一些特征,或用来控制CPU的某种操作。
3.8086/8088CPU中有哪些寄存器可用来指示操作数在存储器中某段内的偏移地址? 答:可用来指示段内偏移地址的寄存器共有6个:IP、SP、BP、BX、SI、DI
4.8086/8088CPU中标志寄存器FLAGS有哪些标志位?它们的含义和作用如何? 答:标志寄存器中的标志共有9个,分为两类:状态标志6个和控制标志3个。其作用 是:
(1)状态标志:用来反映算术和逻辑运算结果的一些特征。
CF(Carry Flag)—进位标志位。当进行加减运算时,若最高位发生进位或借位,则CF为1,否则为0。该标志位通常用于判断无符号数运算结果是否超出了计算机所能表示的无符号数的范围。
PF(Parity Flag)—奇偶标志位。当指令执行结果的低8位中含有偶数个1时,PF为1,否则为0。
AF(Auxiliary Flag)—辅助进位标志位。当执行一条加法或减法运算指令时,若结果的低字节的低4位向高4位有进位或借位,则AF为1,否则为0。
ZF(Zero Flag)—零标志位。若当前的运算结果为0,则ZF为1,否则为00
SF(Sign Flag)—符号标志位。当运算结果的最高位为1时,SF=1,否则为00
OF(Overflow Flag)—溢出标志位。当运算结果超出了带符号数所能表示的数值范围,即溢出时,OF=1,否则为0。该标志位通常用来判断带符号数运算结果是否溢出o
(2)控制标志位:用来控制CPU的操作,由程序设置或清除。它们是:
TF(TrapFlag)—跟踪(陷阱)标志位。它是为测试程序的方便而设置的。若将TF置1,8086/8088CPU处于单步工作方式,否则,将正常执行程序。
IP(Interrupt Flag)—中断允许标志位。它是用来控制可屏蔽中断的控制标志位。若用STI指令将IF置1,表示允许CPU接受外部从INTR引脚上发来的可屏蔽中断请求信号;若用CLI指令将IP清0,则禁止CPU接受可屏蔽中断请求信号。IF的状态对非屏蔽中断及内部中断没有影响。
DF(DirectionFlag)—方向标志位。若用STD将DF置1,串操作按减地址方式进行,也就是说,从高地址开始,每操作一次地址自动递减;若用CLD将DF清0,则串操作按增地址方式进行,即每操作一次地址自动递增。
5.8086/8088CPU的地址总线有多少位?其寻址范围是多少? 答:8086/8088地址总线有20根,寻址范围1MB
6.什么叫指令队列?8086/8088CPU中指令队列有什么作用?其长度分别是多少? 答:(1)指令队列:采用“先进先出”原则,按顺序存放预执行指令的缓冲器称为指令队列。
(2)指令队列的作用:存放EU将要执行的指令,使CPU的取指和执行指令能并行工作。
(3)指令队列的长度:8086为6个字节,8088为4个字节。
7.Intel8086与8088有何区别? 答:8086与8088的区别有三处:
(1)外部数据总线位数不同(即地址/数据分时复用引脚条数不同);
8086为16位:AD15~AD0。
8088为 8位:AD7~AD0。
(2)内部指令队列缓冲器长度不同;
8086有6个字节。当指令队列出现2个空字节时,BIU将取指补充。
8086有4个字节。当指令队列出现1个空字节时,BIU将取指补充。
(3)外部某些控制总线定义不同。
① 8086的28号引脚定义为M/IO(S2),8088定义为IO/M(S2)
② 8086的34号引脚定义为BHE/S7,8088定义为SS0/(HIGH)
8.简述8086 CPU使用地址锁存信号ALE将地址A15~A0与数据D15~D0分开的工作原理。
答:在任何一个总线周期的T1状态,ALE均为高电平,以表示当前地址/数据复用线上的输出的是地址信息,在ALE由高变低的下降沿时把地址装入地址锁存器,而在T2、T3和T4状态,ALE均为低电平,以表示当前地址/数据复用线上的输出的是数据信息,此时通过数据收发器进行传送。
9.什么是逻辑地址?什么是物理地址?若已知逻辑地址为BA00:A800,试求物理地址。
答: 逻辑地址:由段地址和偏移地址表示的存储单元地址称为逻辑地址。
物理地址:CPU对存储器进行访问时实际所使用的20位地址称为物理地址。
若
逻辑地址为BA00H:A800H
则
物理地址=BA00H×10H+A800H=C4800H
10.简述堆栈指针寄存器SP的功能及堆栈的操作过程。
答:(1)SP的功能:指示进栈和出栈操作时的偏移地址。
(2)堆栈的操作过程:进栈时,先将SP-2,再将数据压入堆栈(即先移后入);出栈时,先将数据弹出堆栈,再将SP+2(即先出后移)。
第四章
80X86 指令系统
指出源操作数的寻址方式
⑴ MOV BX,2000H
;立即数寻址
⑵ MOV BX,[2000H] ;直接寻址
⑶ MOV BX,[SI]
;寄存器间接寻址
⑷ MOV BX,[SI+2000H] ;寄存器相对寻址
⑸ MOV [BX+SI],AL ;寄存器寻址
⑹ ADD AX,[BX+DI+80] ;基址变址相对寻址
⑺ MUL BL
;寄存器寻址
⑻ JMP BX
;段内间接寻址
⑼ IN
AL,DX
;端口间接寻址
⑽ INC WORD PTR [BP+10H] ;寄存器相对寻址
⑾ MOV CL,LENGTH VAR ;立即数寻址
⑿ MOV BL,OFFSET VAR1 ;立即数寻址
指出下列指令是否正确
(1)MOV DS,0100H
;错误。源操作数是立即数时,目的操作数不能时段寄存器
(2)MOV BP,AL
;错误。操作数类型不一致
(3)XCHG AH,AL
;正确。
(4)OUT 310H,AL
;错误。端口直接寻址的范围应在0~FFH之间
(5)MOV BX,[BX]
;正确。
(6)MOV ES:[BX+DI],AX ;正确。
(7)MOV AX,[SI+DI] ;错误。存储器寻址中有效地址不能由两个变址寄存器组成(8)MOV SS:[BX+SI+100H],BX ;正确。
(9)AND AX,BL
;错误。操作数类型不一致
(10)MOV DX,DS:[BP]
;正确。
(11)ADD [SI],20H
;错误。用PTR 说明类型
(12)MOV 30H,AL
;错误。目的操作数不能为立即数
(13)PUSH 2000H
;错误。堆栈指令的操作数不能是立即数
(14)MOV
[SI],[2000H]
;错误。两个操作数不能同时为存储器操作数
(15)MOV
SI,AL
;错误。操作数类型不一致
(16)ADD [2000H],20H ;错误。用PTR 说明类型
(17)MOV CS,AX
;错误。目的操作数不能为代码段寄存器
(18)INC [DI]
;错误。需用PTR说明类型
(19)OUT BX,AL
;错误。端口间接寻址的寄存器只能是DX寄存器
(20)SHL
BX,3
;错误。移位次数大于1时应该用CL寄存器
(21)XCHG CX,DS
;错误。交换指令中不能出现段寄存器
(22)POP
AL
;错误。堆栈指令的操作数只能是字操作数(即16位操作数)
写出存储器操作数物理地址的计算表达式
(1)MOV AL,[DI]
;(DS)×10H+(DI)(2)MOV AX,[BX+SI]
;(DS)×10H+(BX)+(SI)(3)MOV 5[BX+DI],AL
;(DS)×10H+(BX)+(DI)+5(4)ADD AL,ES:[BX]
;(ES)×10H+(BX)
(5)SUB AX,[1000H]
;(DS)×10H+1000H(6)ADC AX,[BX+DI+2000H]
;(DS)×10H+(BX)+(DI)+2000H(7)MOV CX,[BP+SI]
;(SS)×10H+(BP)+(SI)(8)INC
BYTE PTR [DI]
;(DS)×10H+(DI)
若(DS)=3000H,(BX)=2000H,(SI)=0100H,(ES)=4000H,计算下列存储器操作数的物理地址。
(1)(DS)×10H+(BX)=3000H×10H+2000H=32000H
(2)(DS)×10H+(BX)+(SI)+1000H=3000H×10H+2000H+0100H+1000H=33100 H
(3)(DS)×10H+(BX)+(SI)=3000H×10H+2000H+0100H=32100 H
(4)(ES)×10H+(BX)=4000H×10H+2000H=42000 H
5、若(CS)=E000H,说明代码段可寻址物理存储空间的范围。
∵ 最小物理地址为:(CS)×10H+0000H=E0000H
最大物理地址为:(CS)×10H+FFFFH=EFFFFH ∴ 代码段可寻址物理存储空间的范围是:E0000H~EFFFFH
6、设(SP)=2000H,(AX)=3000H,(BX)=5000H,执行下列程序段后,(SP)=?,(AX)=?,(BX)=?
PUSH AX
PUSH BX
POP AX(SP)=1FFEH,(AX)=5000H,(BX)=5000H
7、试比较SUB AL,09H与CMP AL,09H这两条指令的异同。若(AL)=08H,分别执行上述两条指令后,(AL)=?,CF=?,OF=0,ZF=?
(1)相同点:两条指令都能完成(AL)-09H的功能,并且都影响六个状态标志位;
不同点:SUB指令将运算结果回送到AL寄存器中,而CMP指令不回送。
(2)SUB AL,09H
;(AL)=FFH,CF=1,OF=0,ZF=0
CMP AL,09H
;(AL)=08H,CF=1,OF=0,ZF=0
8、分别执行下列指令,试求AL的内容及各状态标志位的状态。
(1)MOV AL,19H ;
ADD AL,61H ;(AL)=7AH
OF=0
SF=0
ZF=0
AF=0
PF=0
CF=0(2)MOV AL,19H ;
SUB AL,61H ;(AL)=B8H
OF=0
SF=1
ZF=0
AF=0
PF=1
CF=1(3)MOV AL,5DH ;
ADD AL,0C6H ;(AL)=23H
OF=0
SF=0
ZF=0
AF=1 PF=0
CF=1(4)MOV AL,7EH ;
SUB AL,95H ;(AL)=E9H
OF=1
SF=1
ZF=0
AF=0
PF=0
CF=1
9、用最少的指令,实现下述要求的功能。
(1)AH的高4位清零。
AND AH,0FH
(2)AL的高4位去反。
XOR
AH, 0F0H
(3)AL的高4位移到低4位,高4位清0。
MOV
CL,4
SHR
AL,CL(4)AL的低4位移到高4位,低4位清0。
MOV CL,4
SHL
AL,CL
10、设(BX)=6D16H,(AX)=1100H,写出下列三条指令执行后,AX和BX寄存器中的内容。
MOV
CL,06H
ROL AX,CL
SHR BX,CL
(AX)=4004 H
(BX)=01B4 H
11、设初值(AX)=0119H,执行下列程序段后,(AX)=?
MOV CH,AH
ADD AL,AH
DAA
XCHG AL,CH
ADC AL,34H
DAA
MOV AH,AL
MOV AL,CH
(AX)=3520 H
12、指出下列程序段的功能。
(1)MOV CX,10
LEA SI,First
LEA DI,Second
REP MOVSB
将 First串中前10个字符传送至Second 中
(2)CLD
LEA DI,[0404H]
MOV CX,0080H
XOR AX,AX
REP STOSW
将起始地址为0404 H开始的80 H个单元置成0
13、设(BX)=6F30H,(BP)=0200H,(SI)=0046H,(SS)=2F00H,(2F246H)=4154H,试求执行XCHG BX,[BP+SI]后,(BX)=?,(2F246H)=?
(BX)=4154H
(2F246H)=6F30H
14、设(BX)=0400H,(DI)=003CH,执行LEA BX,[BX+DI+0F62H]后,(BX)=?
(BX)=139E H
15、设(DS)=C000H,(C0010H)=0180H,(C0012H)=2000H,执行LDS SI,[10H]后,(SI)=?,(DS)=?
(SI)=0180 H,(DS)=2000 H
16、已知(DS)=091DH,(SS)=1E4AH,(AX)=1234H,(BX)=0024H,(CX)=5678H,(BP)=0024H,(SI)=0012H,(DI)=0032H,(09226H)=00F6H,(09228H)=1E40H,试求单独执行下列指令后的结果。
(1)MOV CL,20H[BX][SI]
;(CL)=0F6 H
(2)MOV [BP][DI],CX
;(1E4F6 H)=5678 H
(3)LEA BX,20H[BX][SI] ;(BX)=0056 H
MOV AX,2[BX]
;(AX)=1E40 H(4)LDS SI,[BP][DI]
;
MOV
[SI],BX
;((SI))=0024 H
(5)XCHG CX,32H[BX] ;
XCHG 20H[BX][SI],AX ;(AX)=5678 H,(09226H)=1234 H
17、若CPU中各寄存器及RAM参数如图所示,试求独立执行如下指令后,CPU及RAM相应寄存器及存储单元的内容是多少?
CPU RAM 执行前 执行后
CS 3000H FFFFH CX 20506H 06H 不变
DS 2050H 0004H BX 20507H 00H 不变
SS 50A0H 1000H SP 20508H 87H 不变
ES 0FFFH 17C6H DX 20509H 15H 不变
IP 0000H 8094H AX 2050AH 37H 94H
DI 000AH 1403H BP 2050BH C5H 不变
SI 0008H 1 CF 2050CH 2FH 不变
(1)MOV DX,[BX+2] ;(DX)=0006H,(BX)=0004H(2)PUSH CX
;(SP)=0FFEH(3)MOV CX,BX ;(CX)=0004H,(BX)=0004H(4)TEST AX,01 ;(AX)=8094H,(CF)=0(5)MOV AL,[SI] ;(AL)=87H(6)ADC AL,[DI] ;(AL)=0CCH,(CF)=0
DAA
;(AL)=32H(7)INC SI
;(SI)=0009H(8)DEC DI
;(DI)=0009H(9)MOV [DI],AL ;((DI))=94H(10)XCHG AX,DX ;(AX)=17C6H,(DX)=8094H(11)XOR AH,BL ;(AH)=84H,(BL)=04H(12)JMP DX
;(IP)=17C6H
18、(DS)=2000H,(BX)=1256H,(SI)=528FH,偏移量=20A1H,(232F7H)=3280H,(264E5H)=2450H,试求执行下述指令后的结果。
(1)JMP BX
;(IP)=1256 H
(2)JMP TABLE[BX]
;(IP)=3280 H
(3)JMP [BX][SI]
;(IP)=2450 H
19、设(IP)=3D8FH,(CS)=4050H,(SP)=0F17H,当执行CALL 2000H:0094H后,试指出(IP)、(CS)、(SP)、((SP))、((SP)+1)、((SP)+2)和((SP)+3)的内容。
CALL指令是5字节指令,下一条指令地址为4050H:3D94H 所以执行后
(IP)=0094H,(CS)=2000H、(SP)=0F13H
((SP))=94H,((SP)+1)=00H,((SP)+2)=00H,((SP)+3)=20H 第五章
汇编语言程序设计
2.PLENTH的值为0022,它表示当前已分配单元空间; 3.L的值为6;
5.(AX)=000AH;(BL)=0AH;(CL)=01H; 10.MOV AX, 4A82H MOV DL,AH AND DL,0F0H
MOV CL,4 SHR DL,CL
PUSH AX
AND AH,0FH
MOV BH,AH
AND AL,0F0H
MOV BL,AL
MOV CL,4
SHR BL,CL
MOV CL,BH
POP AX
AND AL,0FH 11.data
segment
string1 db 'I am a student.'
string2 db 'I am a student.'
yes
db 'match',0dh,0ah,'$'
no
db 'no match',0dh,0ah,'$' data
ends code
segment
assume cs:code,ds:data,es:data start: push ds
sub ax,ax
push ax
mov ax,data
mov ds,ax
mov es,ax
lea si,string1
lea di,string2
mov cx,string2-string1
cld
repe cmpsb
jnz dispno
mov ah,9
lea dx,yes
int 21h
jmp exit dispno: mov ah,9
lea dx,no
int 21h exit:
MOV AH,4CH
INT 21H code
ends
13.DATA SEGMENT
M
DB
11H,22H,33H,44H,64H,87H,34,29,67H,88H,0F6H
DB
43H,0B7H,96H,0A3H,233,56H,23H,56H,89H C EQU 20 P DB 20 DUP(?)N DB 20 DUP(?)
PLUS
DB
'PLUS',0DH,0AH,'$'
MINUS
DB
'MINUS',0DH,0AH,'$'
J
DB DUP(?)
DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV
AX,DATA MOV
DS,AX LEA
SI,M LEA
DI,P LEA
BX,N MOV
CX,C MOV
DX,0 LOOP1:
LODSB TEST AL,80H
JNZ
MINUS1;负数转移
MOV [DI],AL
INC DI
INC
DH;存正数个数
JMP
AGAIN MINUS1: MOV [BX],AL
INC BX
INC DL;存负数个数 AGAIN: DEC CX
JNZ
LOOP1
MOV WORD PTR J,DX;存结果
MOV DX,OFFSET MINUS
MOV AH,9
INT 21H
;显示提示信息
MOV BL,J
MOV CH,2 ROTATE: MOV CL,4
ROL BL,CL
MOV AL,BL
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL
POR
ADD AL,7 POR:
MOV DL,AL
MOV AH,2
INT 21H
DEC CH
JNZ ROTATE
;十六进制形式输出负数个数
MOV AH,2
MOV DL,0DH
INT 21H
MOV DL,0AH
INT 21H
MOV DX,OFFSET PLUS
MOV AH,9
INT 21H
MOV DH,J+1
MOV CH,2 ROTATE1: MOV CL,4
ROL
DH,CL
MOV AL,DH
AND AL,0FH
ADD AL,30H
CMP AL,3AH
JL
POR1
ADD AL,7 POR1: MOV DL,AL
MOV AH,2
INT 21H
DEC CH
JNZ ROTATE1
MOV AH,4CH
INT 21H CODE ENDS END START
第六章
半导体存储器
2、(1)
64片
片内寻址线
10根,片间寻址线
6根
(2)128片
片内寻址线
11根,片间寻址线
5根
(3)
16片
片内寻址线
11根,片间寻址线
5根
(4)
2片
片内寻址线
14根,片间寻址线
2根 3、1024×8的RAM芯片,地址线11根。数据线8根
6、已知:8位微机地址,总线16位,设计12KB存储系统,其中ROM 占用0000H开始的8KB,RAM占用2000H 开始的4KB,存储芯片分别选用INTEL 2716和2114 分析如下:(1)ROM 2716
2K×8芯片,需4片,做字扩展,片内寻址线11根 RAM 2114
1K×4芯片,需8片,做字位扩展,片内寻址线10根
(2)地址范围:
A15 A14 A13 A12 A11 A10 ROM1:0000H~07FFH
0
0
0
0
0
0 ROM2:0800H~0FFFH
0
0
0
0
0
A15 A14 A13 A12 A11 A10 ROM3:1000H~17FFH
0
0
0
0
0 ROM4:1800H~1FFFH
0
0
0
0 RAM1、2:2000H~23FFH
0
0
0
0
0 RAM3、4:2400H~27FFH
0
0
0
0 RAM5、6:2800H~2BFFH
0
0
0
0 RAM7、8:2C00H~2FFFH
0
0
0(3)A11、A12、A13
3:8译码器 译码输入
(一级译码)ROM1 :Y0 ROM2 :Y1 ROM3 :Y2 ROM4 :Y3 RAM1、2 :Y4 与
A10
(二级译码)RAM3、4 :Y4 与
A10 RAM5、6 :Y5 与
A10 RAM7、8 :Y5 与
A10(4)画图连接 略 9、8088组成的小型计算机系统,32KB ROM,其地址范围00000~07FFFH, RAM占用8KB,地址范围:08000H~09FFFH。ROM选用 2764(8K×8),RAM选用2114(1K×4)分析如下
(1)ROM 2764
8K×8芯片,需4片,做字扩展,片内寻址线13根 RAM 2114
1K×4芯片,需16片,做字位扩展,片内寻址线10根
(2)地址范围:
A15 A14 A13 A12 A11 A10 ROM1
00000~01FFF H
0
0
0
(一级译码)ROM2
02000~03FFF H
0
0
ROM3
04000~05FFF H
0
0
ROM4
06000~07FFFH
0 RAM1(组)08000~083FFH
0
0
0
0
0
(二级译码)RAM2
08400~087FFH
0
0
0
0
RAM3
08800~08BFFH
0
0
0
0 RAM4
08C00~08FFFH
0
0
0
RAM5
09000~093FFH
0
0
0
0 RAM6
09400~09FFFH
0
0
0
RAM7
09800~09BFFH
0
0
0 RAM8
09C00~09FFFH
0
0
1(3)ROM1 Y0
(1 # 译码器
A15
A14 A13 译码输入)ROM2 Y1 ROM3 Y2 ROM4 Y3 RAM1 Y0
(2 # 译码器
A12 A11 A10译码输入# Y4做2#的控制信号)RAM2 Y1 RAM3 Y2 RAM4 Y3 RAM5 Y4 RAM6 Y5 RAM7 Y6 RAM8 Y7(4)需两片3:8译码器 画图连接 略
第七章
输入 / 输出 与 中断 15、01D8 H
16、接通打印机→ 检查打印状态→ 发送数据
OR
AL,01 H
OUT 0F7H , AL
IN
AL ,0F6 H
OUT 0F5H , AL 第八章
可编程接口芯片及应用
初始化命令字 及 计数初值
CUNT0 36H或37H
1000
CUNT1 54H 或55H
始化控制字
(1)99H
(2)B6 H
PC2及PC4 置位命令字 09 H
05 H
第二篇:微机原理考试答案
微机原理与应用考试答案
一、单选题(25分,每个1分)1、8086当前被执行的指令放在(D)
A、DS:BX
B、SS:SP
C、CS:PC
D:CS:IP 2、8086CPU能够直接执行的语言是(B)
A、汇编语言
B、机器语言
C、C语言
D、JAVA语言
3、在机器数(C)零的表示形式是唯一的 A、原码
B、反码
C、补码
D、原码和反码 4、8位二进制数的补码表示范围为(C)
A、0-255
B、-127~+127
C、-128~+127
D、-128~+128
5、从8086RAM地址002CH开始存放4个字节中断向量,对应的中断号是(B)A、0AH
B、0BH
C、0CH
D、0DH
6、需要扩充存储容量时采用(A)的方法
A、地址串联
B、地址并联
C、数据线并联
D、数据线串联
7、通常输出接口需要(B)
A、缓冲器
B、锁存器
C、计数器
D、反相器
8、运算器执行两个补码表示的整数加法时,产生溢出的正确叙述为(D)
A、相加结果的符号位为0则产生溢出
B、相加结果的符号位为1则产生溢出
C、最高位有进位则产生溢出
D、相加结果的符号位与两同号加数的符号位相反,则产生溢出
9、MIPS用来描述计算机的计算速度,其含义为(B)
A、每秒处理百万个字符
B、每秒执行百万条指令
C、每分钟处理百万个字符
D、每分钟执行百万条指令
10、下列数中,最大的数是(C)
A、(1011110)2
B、(140)8
C、(97)10
D、(5F)16 11、8086CPU共有(D)根分时复用总线 A、8
B、16
C、20
D、21 12、8086系统中每个逻辑段的最多存储单元数为(A)A、64KB
B、256KB
C、1MB
D、根据需要而定
13、CPU对存储器访问时,地址线和数据线的有效时间关系是(B)A、数据线先有效
B、地址线先有效
C、同时有效
D、同时无效
14、通常所说的32位机是指(A)
A、CPU字长为32位
B、寄存器数量为32个
C、存储器单元数据为32位
D、地址总线宽度为32位
15、若要使寄存器AH中高4位不变,低四位清0,使用指令(D)
A、OR AH,0FH
B、AND AH,0FH
C、OR AH,0F0H
D、AND AH,0F0H
16、某I/O接口芯片中的端口地址为0A10H~0A1FH,它的片内地址线有(B)A、2条
B、4条
C、8条
D、16条
17、从8086存储器的奇地址开始读取一个字节,需要执行(B)总线周期 A、0个
B、1个
C、2个
D、3个
18、下列说法中,正确的是(A)
A、栈顶是堆栈操作的唯一出口
B、堆栈操作遵循先进先出的原则
C、栈底是堆栈地址的较小端
D、执行出栈操作后,栈顶地址将减小 19、8086CPU从功能结构上看是由(B)组成 A、控制器、运算器
B、控制器、运算器、寄存器
C、控制器、20位物理地址加法器
D、执行单元、总线接口单元 20、128KB的SRAM有8条数据线,有()条地址线 A、17条
B、18条
C、20条
D、128条
21、可编程定时/计数器8253内含有(B)独立的计数器 A、2个
B、3个
C、4个
D、6个
22、构成1MB存储器系统,需要容量32K*4的RAM芯片(B)片 A、16
B、32
C、64
D、128
23、下列寻址方式中,需要执行总线周期的为(D)
A、立即数寻址
B、寄存器寻址
C、固定寻址
D、存储器寻址
24、容量为10K的SRAM的起始地址为1000H,则终止地址为(C)A、31FFH
B、33FFH
C、37FFH
D、4FFFH
25、下列逻辑地址中对应不同物理地址的是(B)
A、0400H:0340H
B、03E0H:0740H
C、0420H:0140H D、03C0H:0740H
二、填空题(15分,每空1分)
1、由18个字数据组成的存储区,其首地址为1EA5H:BDC7H,则末字单元的物理地址为___________
2、CPU与外设传递的三种信息是程序方式、中断方式和DMA方式
3、每条指令一般都由操作码和操作数两部分构成
4、下列指令执行前SS=2000H,SP=0060H,执行下列程序之后,SP= AX=,BX=
,CX= MOV AX,1020H MOV BX,3040H MOV CX,5060H PUSH AX PUSH BX POP CX
5、二进制数11101001,若为补码表示的有符号数,其十进制数值是________; 若为无符号数,其十进制数值是________
6、若AX=42DAH,BX=4331H,则SUB AX,BX指令执行后,SF=______,ZF=_______,CF=________。
三、名词解释(12分,每个3分)
1、堆栈
堆栈都是一种数据项按序排列的数据结构,只能在一端(称为栈顶(top))对数据项进行插入和删除。
2、中断向量
中断服务程序的入口地址称为中断向量
3、总线周期
1.微处理器是在时钟信号CLK控制下按节拍工作的。8086/8088系统的时钟频率为4.77MHz,每个时钟周期约为200ns。
2.由于存贮器和I/O端口是挂接在总线上的,CPU对存贮器和I/O接口的访问,是通过总线实现的。通常把CPU通过总线对微处理器外部(存贮器或I/O接口)进行一次访问所需时间称为一个总线周期。一个总线周期一般包含4个时钟周期,这4个时钟周期分别称4个状态即T1状态、T2状态、T3状态和T4状态。
4、分时复用总线
由于CPU引脚数量有限,使得一些引脚起多个作用,比如:AB0~AB7在T1时刻表示地址,在T2~T4时刻表示数据,这样就称为AB0~AB7为‘分时复用’。
四、简答题
1、半导体存储器分为哪两大类,简要说明各类特点
答:按制造工艺分类,半导体存储器可以分为双极型和金属氧化物半导体型两类。
双极型(bipolar)由TTL晶体管逻辑电路构成。该类存储器件的工作速度快,与CPU处在同一量级,但集成度低,功耗大,价格偏高,在微机系统中常用做高速缓冲存储器cache。
金属氧化物半导体型,简称MOS型。该类存储器有多种制造工艺,如NMOS, HMOS, CMOS, CHMOS等,可用来制造多种半导体存储器件,如静态RAM、动态RAM、EPROM等。该类存储器的集成度高,功耗低,价格便宜,但速度较双极型器件慢。微机的内存主要由MOS型半导体构成。
2、简述8086中断系统响应可屏蔽中断的全过程
答:CPU在INTR引脚上接到一个中断请求信号,如果此时IF=1,并且,当前的中断有最高的优先级,CPU就会在当前指令执行结束完以后开始响应外部中断请求。这是,CPU通过INTA引脚连续发送两个负脉冲,外设接口在接到第二个负脉冲后,在数据线上发送中断类型码,CPU接到这个中断类型码后做如下操作: 1 将中断类型码放入暂存器保存; 2 将标志寄存器内容入栈,保护中断状态; 3 将IF和TF表示清零; 4 保护断点。IP和CS内容入栈; 根据当前中断类型码,在中断向量表找到相应的中断子程序的首地址,将其装入IP和CS,这样就可以实现自动转向中断服务子程序处执行。
3、CPU与外设交换数据的传送方式分为哪几种?简要说明各自特点
答:(1)CPU与外设交换数据的传送方式可分为3种:程序传送、中断传送和直接存储器存取(DMA)传送。
(2)程序查询输入输出传送方式能较好地协调外设与CPU之间定时的差别;程序和接口电路比较简单。其主要缺点是:CPU必须做程序等待循环,不断测试外设的状态,直至外设为交换数据准备就绪时为止。这种循环等待方式很花费时间,大大降低了CPU的运行效率。中断传送的I/O操作与查询方式的不同,它总是先由外设主动请求中断,再由CPU通过响应外设发出的中断请求来实现。中断传送方式的好处是:既大大提高了CPU的工作效率,又能对突发事件做出实时处理,I/O响应速度很快。其缺点是需要一系列中断逻辑电路支持,中断程序设计和调试也比较复杂。DMA方式,是一种专门的硬件电路执行I/O交换的传送方式,它让外设接口可直接与内存进行高速的数据传送,而不必经过CPU,这样就不必进行保护现场之类的额外操作,可实现对存储器的直接存取。
五、计算题
第三篇:微机原理复习题及答案
一、选择题
1.一般微机中不使用的控制方式是(D)A.程序查询方式
B.中断方式
C.DMA方式
D.通道方式 2.控制器的功能是(C)A.产生时序信号 B.从主存取出指令并完成指令操作译码 C.从主存取出指令,分析指令并产生有关的操作控制信号 D.控制计算机的一切核心功能
3.采用级联方式使用8259中断控制器,可使它的中断源最多扩大到(D)个 A.8 B.16 C.32 D.64 4.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态 5.地址总线为32位的微机系统中其内存最大容量为(D)A.2000KB B.2048KB C.2048MB D.4096MB 6.CPU中程序计数器(PC)中存放的是(B)A.指令 B.指令地址 C.操作数 D.操作数地址 7.采用条件传送方式时,必须要有(C).A.中断逻辑 B.请求信号 C.状态端口 D.类型号 8.在任何一个总线周期的T1状态,ALE输出(A)A.高电平B.低电平C.高阻态 D.无电流 9.若标志寄存器的奇偶标志位PF置“1”反映操作(C)A.结果是偶数 B.结果是奇数 C.结果中“1”的个数为偶数 D.结果中“1”的个数为奇数 10.在DMA方式下,CPU与总线的关系是(C).A.只能控制数据总线 B.只能控制地址总线 C.成隔离状态 D.成短接状态 11.当使用BP寄存器作基址寻址时,若无指定段替换,则内定在(B)段内寻址。A.程序 B.堆栈 C.数据 D.附加
12.某DRAM芯片,其存储容量为512KX*8位,该芯片的地址线和数据线数目为(D)A.8,512 B.512,8 C.18,8 D.19,8 13.计算机的存储器采用分级存储体系的主要目的是(D)。
A.便于读写数据 B.减小机箱的体积 C.便于系统升级 D.解决存储容量、价格和存取速度之间的矛盾 14.CPU中程序计数器(PC)中存放的是(B)A.指令 B.指令地址 C.操作数 D.操作数地址 15.外设的中断类型码必须通过16位数据总线的(B)传送给8086.A.高8位 B.低8位 C.16位 D.高4位
16.磁盘存储器的数据存取速度与下列哪一组性能参数有关?(B).A.平均等待时间,磁盘旋转速度,数据传输速串 B.平均寻道时间,平均等待时间,数据传输速串 C.数据传输速率,磁盘存储密度,平均等待时间 D.磁盘存储器容量,数据传输速率,平均等持时间 17.8259的OCW1----中断屏蔽字(C)设置.A.在ICW之前 B.只允许一次 C.可允许多次 D.仅屏蔽某中断源时 18.PC机中的硬中断服务程序执行的是:(A)。
A.外部中断请求CPU完成的任务 B.主程序中安排的中断指令 C.主程序中安排的转移指令 D.主程序中安排的调用指令 19.标志寄存器的标志位ZF=1表示运算结果(A)A.为零 B.为负 C.溢出 D.有进位 20.在DMA方式下,CPU与总线的关系是(C).A.只能控制数据总线 B.只能控制地址总线 C.成隔离状态 D.成短接状态 21.存储单元是指(B)
A.存放一个二进制信息位的存储元 B.存放一个机器字的所有存储元集合 C.存放一个字节的所有存储元集合 D.存放两个字节的所有存储元集合 22.提出中断请求的条件是(B).A.外设提出请求 B.外设工作完成和系统允许时
C.外设工作完成和中断标志触发器为“1”时 D.外设需要工作
23.计算机的主存储器容量达到10M时,其地址的表示至少需要使用多少个2进位?(C).A.10位 B.20位 C.30位 D.40位 24.I/O与主机信息的交换采用中断方式的特点是(B)A.CPU与设备串行工作,传送与主程序串行工作 B.Cpu与设备并行工作,传送与主程序串行正作 C.CPU与设备并行工作,传送与主程序并行工作.D.以上都不对
25.当8086/8088访问100H端口时,采用(C)寻址方式.A.直接 B.立即 C.寄存器间接 D.相对 26.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态 27.某DRAM芯片,其存储容量为512KX*8位,该芯片的地址线和数据线数目为(D)A.8,512 B.512,8 C.18,8 D.19,8 28.下面关于主存储器(也称为内存)的叙述中,不正确的是:(B).A.主存储器向CPU提供要执行的数据,程序段等 B.存储器的读、写操作一次读出或写入一个字节 C.字节是主存储器中信息的基本编址单位
D.从程序设计的角度来看,cacbe(高速缓存)也是主存储器 29.段定义语句以(B)语句结束。
A.END B.ENDS C.ENDP D.ENDM 30.8255A的(C)只能工作在方式0。
A.A端口 B.B端口 C.C端口 D.前三者 31.8253—5是可编程的(A)接口芯片。
A.定时器/计数器 B.并行 C.串行 D.中断控制器 32.存储器是计算机系统的记忆设备,它主要用来(C)
A.存放数据 B.存放程序 C.存放数据和程序 D.存放微程序 33.串行传送的波特率是指单元时间内传送(A)数据的位数。
A.二进制 B.八进制 C.十进制 D.十六进制 34.下面关于主存储器(也称为内存)的叙述中,不正确的是:(B).A.主存储器向CPU提供要执行的数据,程序段等 B.存储器的读、写操作一次读出或写入一个字节 C.字节是主存储器中信息的基本编址单位
D.从程序设计的角度来看,cacbe(高速缓存)也是主存储器
35.某计算机字长32位,存储容量为4MB,若按字编址,它的寻址范围是(A)A.0-1M B.0-4MB C.0-4M D.0-1MB 36.一条指令中目的操作数不允许使用的寻址方式是(B)
A.寄存器寻址 B.立即数寻址 C.变址寻址
D.寄存器间接寻址 37.在8086/8088中,一个最基本的总线周期由4个时钟周期(T状态)组成,在T1状态,CPU在总线发出(C)信息.A.数据 B.状态 C.地址 D.其他
38.采用两只中断的控制器8259A级联后,CPU的可屏蔽硬中断源能扩大到(D)A.64个 B.32个 C.16个 D.15个 39.下列寄存器为8位的寄存器有(D)A.IP B.AX C.BP D.BH 40.地址总线为32位的微机系统中其内存最大容量为(D)A.2000KB B.2048KB C.2048MB D.4096MB 41.8259的OCW1----中断屏蔽字(C)设置.A.在ICW之前 B.只允许一次 C.可允许多次 D.仅屏蔽某中断源时 42.在汇编语言程序设计中,标号和变量的类型属性分别有:(A)。A.BIT、BYTE、WORD、DWORD B.NEAR、FAR C.EAR、FAR 和BYTE、WORD、DWORD D.CODE、DATA、STACK 43.在任何一个总线周期的T1状态,ALE输出(A)A.高电平B.低电平C.高阻态 D.无电流 44.下面哪一个是8088CPU中的代码段寄存器(A)A.CS B.DS C.ES D.SS 45.8086CPU可扩展I/O端口地址的个数最多为(D)A.1K B.4K C.8K D.64K 46.Pc机数据总线信号的状态是:(C).A.单向双态 B.单向三态 C.双向三态 D.双向双态
47.采用级联方式使用8259中断控制器,可使它的中断源最多扩大到(D)个 A.8 B.16 C.32 D.64 48.存储器是计算机系统的记忆设备,它主要用来(C)
A.存放数据 B.存放程序 C.存放数据和程序 D.存放微程序
49.对于一低速外设,在外设准备数据期间希望CPU能做自己的工作,只有当外设准备好数据后才与CPU交换数据。完成这种数据传送最好选用的传送方式是(C)A.无条件传递方式 B.查询传送方式 C.中断传送方式 D.DMA传送方式 50.设8255A的端口地址为80H~ 83H,则端口A的地址为(A)A.80H B.81H C.82H D.83H
二、填空题
1.Intel 8255A是一个_可编程的通用并行输入输出_ 接口芯片。
2.设某容量为4K的RAM芯片的起始地址为2000H(16位地址),则其终止地址为_2FFFH_.3.一个控制系统,当主设备发生异常时,需向CPU告警,请求处理,否则将危及工作人员的生命及设备的安全,此告警线应接到8086CPU的_ NMI__中断请求信号引脚上.4.采用中断查询传送方式时,完成一次传送过程,首先必须通过执行一条_IN__指令,读取外设信息.5.8255A内部具有__3___个输入输出端口。
6.机器指令由操作码和__操作数____两部分组成 7.计算机时钟脉冲的频率称为____主频______.8.可编程接口电路中用来存放控制电路组态的控制字节寄存器称为__控制____寄存器。9.硬件中断可分为__可屏蔽中断,非屏蔽中断__两种。10.16K字节的RAM芯片应有__14____根地址输入端.11.逻辑地址由段基址和_偏移地址___组成。12.8086/8088CPU的数据线和地址线是以___分时_____方式轮流使用的。13.根据功能不同,8086的标志位可分为__状态_____和___控制____标志。
14.8086/8088的中断响应了两个总线周期,从____INTA______引脚输出两个负脉冲.15.在8086CPU系统中,设某中断源的中断类型码为08H,中断向量为0100:1000H,则相应的中断向量存储地址为___20____H.16.CPU通过一个外设接口同外设之间交换的信息包括数据信息,状态信息和__控制信息____.17.Intel 8251A工作在同步方式时,最大波特率为_64kbps____.18.8255A内部具有__3___个输入输出接口。
19.机器指令由 操作码 和操作数两部分组成。20.16K字节的RAM芯片应有__14____根地址输入端.21.用4KX4的RAM芯片组成32K的外扩存储器,共需芯片__16____片.22.8086/8088CPU的数据线和地址线是以___分时______方式轮流使用的。
23.数据总线是双向总线,8位微处理器有8条数据线,16位微处理器有__16___条数据总线.24.8086系统中的BHE信号通常作为__奇____地址存储体的体选信号。当BHE为___低___电平时有效。25.Intel 8251A工作在异步方式时,最大波特率为__19.2kbps_______.26.采用中断查询传送方式时,完成一次传送过程,首先必须通过执行一条____IN____指令,读取外设状态信息.27.8086CPU中断系统有__256____种中断类型码,中断类型码与对应的矢量地址换算公式为__中断类型码×4(n×4)____。
28.计算机时钟脉冲的频率称为__主频________.29.一般外设接口与外设间交换的信息有控制信息、数据信息 和 状态信息。30.压栈指令的源操作数只能是 16 位的操作数。31.主机与外设之间数据传送方式有无条件传送方式、查询传送方式、中断方式 和 DMA方式。32.地址总线通常是_单向___总线,由CPU输出,8位微处理器有16条地址总线,16位微处理器有20条或更多。
33.CPU从主存取出一条指令并执行该指令的时间称为___指令周期______.34.8255A控制字的最高位D7=_____1____时,表示该控制字为方式控制字。35.8255A的三个端口中只有端口__C___没有输入锁存功能。36.用Inter2114组成4K*8bit的RAM要用___8___片.37.输入/输出指令间接寻址必须通过_DX_____寄存器.38.8086/8088CPU内部共有____14______个16位寄存器。
39.8086/8088CPU的数据线和地址线是以__分时____方式轮流使用的。
40.串操作指令规定源串在__数据____段中,用_SI____来寻址源操作数,目的串在__附加数据____段中,用 ___DI___ 来寻址目的操作数。
41.存储器通常由存储矩阵,_地址译码器____,控制部件和三态缓冲器组成.42.CPU总线通常包括地址总线、数据总线和___控制______总线等三组总线。
三、简答题
1.外设向CPU申请中断,但CPU不给以响应,其原因有哪些?(1)CPU处于关中断状态,IF=0;(2)该中断请求已被屏蔽;(3)该中断请求的时间太短,未能保持到指令周期结束;(4)CPU已释放总线,而未收回总线控制权。
2.8255各口设置如下:A组与B组均工作于方式0,A口为数据输入,B口为输出,C口高位部分为输出,低位部分为输入,A口地址设为40H.(1)写出工作方式控制字(2)对8255A初始化
(3)从A口输入数据,将其取反后从B口送出
(1)10010001B 即91H(2)MOV AL,91H;OUT 43H,AL
(3)IN AL,40H;NOT AL;OUT 41H,AL
3.说明程序存储及程序控制的概念。
程序存储:程序是由一条条指令组合而成的,而指令是以二进制代码的形式出现的,把执行一项信息处理任务的程序代码,以字节为单位,按顺序存放在存储器的一段连续的存储区域内,这就是程序存储的概念。
程序控制:计算机工作时,CPU中的控制器部分,按照程序指定的顺序(由码段寄存器CS及指令指针寄存器IP指引),到存放程序代码的内存区域中去取指令代码,在CPU中完成对代码的分析,然后,由CPU的控制器部分依据对指令代码的分析结果,适时地向各个部件发出完成该指令功能的所有控制信号,这就是程序控制的概念
4.已知AH=77H,AL=33H能否说AX=7733H,为什么?SI寄存器可分不SH和SL吗? 能。因为AX是16位的数据寄存器,它可以以字(16位)或以字节(8位)形式访问。不能。因为SI是16位的源变址寄存器,只能以字(16位)为单位使用。
5.一台微型计算机有16根地址线,8根数据线,如果采用字节编址,它可访问的最大存储空间是多少字节?试用十六进制数表示其地址范围.64KB,0000H~FFFFH 6.半导体随机存储器RAM与只读存储器ROM有何区别?它们各有哪几种类型? 随机存储器RAM中的任何存储单元都能随时读写,即存取操作与时间,存储单元物理位置顺序无关,一旦掉电,所存信息丢失。常见类型有静态RAM和动态RAM等。
ROM是一种只读存储器,其内容一经写入,在工作过程中就能只能读出不能重写,即使掉电,信息也不会丢失。常见的类型有掩模ROM,PROM,EPROM,EEPROM等。
7.什麽是引脚的分时复用?请说明8086/8088有哪些分时复用引脚?其要解决的问题是什么?
8086的数据线和地址线是利用复用的,所以常把8086的总线称为多路总线,即某一时刻总线上出现的是地址,另一时刻,总线上出现的是数据。正是这种引脚的分时使用方法才能使8086用40条引脚实现20位地址、16位数据及众多的控制信号和状态信号的传输。8086CPU的分时复用的引脚有:地址/数据复用引脚.作用为一个脚多用,如:AD15~AD0,在总线周期的T1状态,传送地址信息,在其它状态则传送数据信息; 8.说明微机系统的工作实质。
计算机之所以能在没有人直接干预的情况下,自动地完成各种信息处理任务,是因为人们事先为它编制了各种工作程序,计算机的工作过程,就是执行程序的过程。9.常用的存储器片选控制方法有哪几种?它们各有什么优缺点? 常用存储器片选控制方法有3种,分别是线选法,全译码法,局部译码法。线选法的优点是连线简单,缺点是地址空间利用率低;全译码法不浪费地址空间,但需译码电路;局部译码介于前二者之间。当存储容量要求大于系统地址线所能寻址的最大范围,或者几个微处理器需要共享某一存储区域时,则采用扩充寻址法。
10.试说明异步串行通信和同步串行通信的特点.异步特点:在通信的数据流中,字符与字符间的传送是完全异步的,字符内部位与位之间还是基本同步传送。同步特点:数据流中的字符之间和字符内部各位间都同步,显然这种方式对同步要求很严格,收/发双方必须以同一时钟来控制发送与接收。
11.在8086CPU中,已知CS寄存器和IP寄存器的内容分别为如下所示,试确定其物理地址.(1)CS=1000H IP=2000H 12000H(2)CS=2000H IP=00A0H 200A0H(3)CS=1234H IP=0C00H 12F40H
12.8259A可编程中断控制器的主要功能有哪些? 1 单片8259A可管理8级优先权中断源,通过级联可管理64级优先权中断源; 2 对任何一级中断源都可单独进行屏蔽,使该中断请求暂时被挂起,直到取消屏蔽时; 能向CPU提供中断类型码; 具有多种中断优先级管理方式,这些管理方式可能过程序动态的进行变化。13.如果利用中断方式传送数据,则数据是如何传输的?中断机构起什么作用? 利用中断方式传送数据,一般是首先向CPU发出中断请求,CPU响应中断后在中断处理程序中进行数据传输,传输完毕返回。中断机构起控制作用,实时性较强。
14.8086/8088系统中为什麽一定要有地址锁存器,需要锁存哪些信息?
8088/8086系统中,一般数据位是8位,而地址位是16位的话,那么可以这么理解:程序要输出一个地址,就必须先输出高8位,用锁存器锁定后,再输出低8位(或反之),这时才完成一个16位地址的输出。
锁存的信息:逻辑电路:通过控制信号完成对当前输出信号的固定,主要是逻辑状态(0,1)集成功能:是一个可以完成当前总线状态的保存
计算机组原:完成数据的保存,是存储器等功能器件的辅助器件 16.8086中有哪些寄存器可用来指示存储器偏移地址? 可用来指示段内偏移地址的寄存器共有6个:IP、SP、BP、BX、SI、DI.17.8255的功能作用是什么?它有哪些工作方式? 8255是可编程的并行接口芯片,设有三个8位的数据输入/输出端口,拱有三种工作方式:方式0为基本的输入/输出方式;方式1为应答式输入/输出方式;方式2为应答式双向数据传送方式。18.写出中断响应的处理过程.(1)中断请求(2)中断允许(3)保护断电,保护现场(4)中断服务(5)恢复现场,中断返回。19.总线周期的含义是什么?8088/8086基本总线周期由几个时钟周期组成?
总线周期是指CPU从存储器I/O端口存取一个字节所需要的时间。8088/8086基本总线周期由4个时钟周期组成。
23.某程序数据段中存有数据字:1234H和5A6BH,若已知DS=5AA0H,她们的偏移地址分别为245AH和3245H,试画出它们在存储器中的存放情况。24.什麽是I/O接口,什麽是I/O端口?
I/O接口:I/O接口是INPUT/OUTPUT指输入/输出设备接口
I/O端口:CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,这些寄存器为I/O端口。
25.虚拟存储器有那些特点?
第一,允许用户用彼内存空间大的多的空间来访问主存。第二,每次访存都要进行虚实地址的转换。
四、1.以下是完成20个字节字符串的传送,并检测是否正确的程序,若正确标志位放00,否则放11。给指定语句加标注。DATSEG SEGMENT DATAX DB ‘ABCD„„RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG;MOV DS, AX MOV ES, AX CLD;MOV SI, OFFSET DATAX;MOV DI, OFFSET DATAY MOV CX, 20;REP MOVSB „„
REPE CMPSB JZ HHH;MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS, AL 2.程序改错(10分)(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。
AAA: MOV SI,OFFSET STATE MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()
(2)从4000H开始有20H个带符号数,要求统计出负数的个数送MIN单元。
XOR DI,DI
MOV BX,4000H
MOV CX,20H AGAIN:MOV AL,[BX] INC BX
TEST AL,01H
JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI
RET 改正:(),()
3.对40个有符号数进行测试,分别把正、负字存放进两段不同单元。完成此程序。
DATA SEGMENT BLOCK DB 43H,56H,0ABH„„ ;共40个字节 PDATA DB 40 DUP(?)NDATA DB 40 DUP(?)DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS
MOV AX, 0 PUSH AX
MOV AX , DATA MOV DS, AX MOV ES, AX
LEA SI , BLOCK LEA DI, PDATA LEA BX, NDATA CLD
MOV CX, PDATA-BLOCK GOON: LODSB
TEST AL, 80H JNZ MINUS STOSB
JMP AGAIN MINUS: XCHG BX, DI
STOSB
XCHG BX, DI AGAIN: LOOP GOON RET EXP1 ENDP CODE ENDS END START 4.程序改错
(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。AAA: MOV SI,OFFSET STATE
MOV AL,[SI] AND AL,0C0H MOV [SI],AL RET 改正:()
(2)ST1是DS段中的一个4字节字符串,ST2是ES段中的一个4字节字符串,比较其是否相等;相等置FLAG单元为00H,不等置FLAG单元为11H。MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()
5.以下是完成20个字节字符串的传送,并检测是否正确的程序,若正确标志位放00,否则放11。完成此程序。DATSEG SEGMENT DATAX DB ‘ABCD„„RST’ DATAY DB 20 DUP(?)FLAGS DB ? DATSEG ENDS MOV AX, DATSEG MOV DS, AX MOV ES , AX CLD MOV SI , OFFSET DATAX MOV DI, OFFSET DATAY MOV CX , 20 REP MOVSB „„
REPE CMPSB JZ HHH MOV AL, 11 JMP III HHH: MOV AL, 00 III: MOV FLAGS , AL 6.程序改错
(1)保持STATE单元内容的D4、D3两位为“0”,其余六位不变。
AAA: MOV SI,OFFSET STATE
MOV AL,[SI] AND AL,0C0H
MOV [SI],AL RET 改正:()
(2)在BUF开始的50个有符号数中(16位),找出最小值存放在MIN单元中。
MOV BX,OFFSET BUF MOV CL,31H
MOV AX,[BX] BBB: INC BX INC BX
CMP AX,[BX]
JNC CCC
MOV AX,[BX] CCC: DEC CX
MOV SI,OFFSET BUF JNZ BBB MOV MIN,AX
RET 改正:(),()
7.用1K×4的2114芯片组成2K×8的存储器系统。
8.用2K×8的2716A存储器芯片组成8K×8的存储器系统。
9.用1K×4的2114芯片构成lK×8的存储器系统。
12.现有8个字节的数据为34H,45H,56H,67H,78H,89H,9AH,ABH,假定它们在存储器中的物理地址为400A5H-400ACH,试求各存储单元的有效地址;若从存储器中读出这些数据,试问要访问几次存储器?
各字节的有效地址分别为0085H,0086H,0087H,0088H,008AH,008BH,008CH 8个总线周期
13.对40个有符号数进行测试,分别把正、负字存放进两段不同单元。给指定语句加标注。
DATA SEGMENT BLOCK DB 43H,56H,0ABH„„ ;共40个字节 PDATA DB 40 DUP(?)NDATA DB 40 DUP(?); DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA, ES:DATA EXP1 PROC FAR START: PUSH DS
MOV AX, 0 PUSH AX
MOV AX, DATA MOV DS, AX MOV ES, AX LEA SI, BLOCK
LEA DI, PDATA ; LEA BX, NDATA CLD
MOV CX, PDATA-BLOCK;
GOON: LODSB
TEST AL, 80H
JNZ MINUS ; STOSB
JMP AGAIN MINUS: XCHG BX, DI ;
STOSB
XCHG BX, DI AGAIN: LOOP GOON
RET EXP1 ENDP CODE ENDS END START 14.程序改错
(1)从4000H开始有20H个带符号数,要求统计出负数的个数送MIN单元。XOR DI,DI
MOV BX,4000H
MOV CX,20H AGAIN:MOV AL,[BX]
INC BX
TEST AL,01H
JNZ GOON INC DI GOON: DEC CX JNZ AGAIN MOV MIN,DI
RET 改正:(),()
(2)ST1是DS段中的一个4字节字符串,ST2是ES段中的一个4字节字符串,比较其是否相等;相等置FLAG单元为00H,不等置FLAG单元为11H。
MOV SI,OFFSET ST1 MOV DI,OFFSET ST2 MOV CX,0004 STD REPNZ CMPSB JZ HHH MOV AL,11 JMP III HHH: MOV AL,00 III: MOV FLAG,AL RET 改正:()()15.画出容量为8K*8的ROM连接图(CPU用8088,EPROM用2716,R0M地址区从4000H开始)
第四篇:微机原理试题及答案
微机原理与接口技术模拟试题
-1.实现DMA传送,需要()
①CPU通过执行指令来完成 ②CPU利用中断方式来完成 ③CPU利用查询方式来完成④不需要CPU参与即可完成 0 下面哪种说法不正确()
①内存地址也可做为接口地址使用
②内存地址不可做为接口地址使用
③接口地址不可做为内存地址使用
④接口地址也可做为外存地址使用
一、单项选择题(每小题1分,共16分)1.指令MOV AX,[BX][SI]中源操作数的寻址方式是()A.寄存器间接寻址 B.变址寻址 C.相对寻址 D.基址变址寻址
2.8086 CPU内有指示下条指令有效地址的指示器是()A.IP B.SP C.BP D.SI 3.设串行异步传送的数据格式是7个数据位、1个起始位,1个停止位、1个校验位,波特率为2400,则每秒钟传送的最大字符数为()A.100个 B.120个 C.10个 D.240个 4.采用高速缓存(cache)的目的是()A.扩大主存容量 B.提高CPU运行速度 C.提高总线速度 D.提高主存速度
5.在DMA方式下,数据从内存传送到外设的路径是()A.内存→CPU→总线→外设 B.内存→DMAC→外设 C.内存→数据总线→外设 D.外设→内存
6.若8086 CPU主频为8MHz,则其基本总线周期为()A.200ns B.500ns C.125ns D.250ns 7.8253工作在哪几种方式时,可输出1个时钟周期宽度(1clk)的负脉冲()A.方式0,4,5 B.方式2,4,5 C.方式1,2,4 D.方式0,2,4 8.CPU响应INTR和NMI中断时,相同的必要条件是()A.当前总线空闲 B.允许中断
C.当前访问内存结束 D.当前指令执行结束 9.8251A的操作命令字的作用是()A.决定8251A的数据传送格式 B.决定8251A实际操作 C.决定数据传送方向 D.决定8251A何时收/发数据 10.用2K×4位的RAM芯片组成16K字节的存储器,共需RAM芯片和片选地址分别为()A.16位和3片 B.8位和8片 C.4片和3位 D.32片和8位
11.8086/8088中除______两种寻址方式外,其它各种寻址方式的操作数均在存储器中。()A.立即寻址和直接寻址 B.寄存器寻址和直接寻址 C.立即寻址和寄存器寻址 D.立即寻址和间接寻址
12.设8259A当前最高优先级为IR5,若要使下一循环IR2为最低优先级,则OCW2应设为()A.01100010 B.11100000 C.11000010 D.11100010 13.设置特殊屏蔽方式的目的是()A.屏蔽低级中断 B.响应高级中断 C.响应低级中断 D.响应同级中断
14.设8255A的方式选择控制字为9BH,其含义是()A.A、B、C口全为输出 B.A、B、C口全为输入 C.A、B口为方式0且输出 D.以上都不对
15.8086/8088 CPU系统中最大模式下增加总线控制器8288的目的是()A.提高总线控制能力 B.提高总线驱动能力 C.控制协处理器 D.解决总线共享控制问题 16.同步通信传输信息时,其特点是()A.每个字符的传送不是独立的 B.字符之间的传送时间长度可不同 C.通信双方必须同步 D.字符发送速率由数据传输率确定
二、填空题(每空0.5分,共16分)1.一台完整的微型计算机应由________________________________四部分组成。2.只有________________________________时,CPU才执行总线周期,总线接口部件BIU的功能是________________________________。
3.总线标准是指____________________________________________。
4.时钟周期是CPU的时间基准,它由计算机的________________决定,若8086的时钟周期为250ns,则基本总线周期为________________。
5.最小模式系统除CPU、存储器、I/O接口和总线外,至少还应配置________________________________三种芯片部件。6.8086CPU响
应
可
屏
蔽
中
断的条
件
是_____________________________________________________________________________________________。
7.8086 CPU中的状态标志是____________________________________________。8.一个完整的中断过程包括____________________________________________四个阶段。确定可屏蔽中断优先级的方法通常有____________________________________________三种。9.执行一
条
指
令
所
需的总
时
间
为____________________________________________之和。
10.CPU执行IN、OUT指令,在硬件上会使______________________信号有效。11.最小模式系统中除CPU以外的总线主模块是__________________,它与CPU间通过____________________两个信号来交换总线控制权。12.在存储
器
系
统
中
实
现
片
选的方
法
有____________________________________________三种。
13.用8K×8位的RAM芯片组成16K×16的存储器时,所需的RAM芯数、片内地址和产生片选信号的地址分别为____________________________。14.CPU与外
设
见的数
据
传
送三
控种
制,方
式其
有中___________________________________________________________________适用于高速数据传输。15.中断系统的基本功能是____________________________。
16.8255A中共有________________个8位端口,其中_____________口既可作数据口,又可产生控制信号,若要所有端口均为输出口,则方式选择字应为____________________________。
17.若要读取8253的当前计数值,则必须____________________________,若要其输出一正跳变沿信号,应选择工作方式____________________________。18.8251A的方式字、操作命令字和状态自三者间的关系是____________________________________________________________________________________。
19.DMA控制器可处于_______________________两种工作状态,DMA控制器的传送方式
(工
作
模
式)
有________________________________________________________四种。20.条件传送时,一个数据的传送过程包括________________________________________________________三个环节。21.外总线也叫____________________________,微机外总线通常有____________________________两种。
三、计算题(每小题4分,共12分)1.在串行异步传送中一个串行字符由1个起始位,7个数据位,1个校验位和1个停止位组成,每秒传送120个字符,则数据传送的波特率应为多少?传送每位信息所占用的时间为多少?
2.已知:I/O端口译码电路如图所示,请指出y1和y4的地址范围及操作类型。3.已知8251A的方式字为DAH,那么发送的字符格式应是怎样的?若要使接收和发送时的波特率分别为600波特和2400波特,则加在RxC和TxC引脚上的接收时钟和发送时钟应各为多少?
四、简答题(每小题5分,共20分)1.8259A中的中断屏蔽寄存器IMR和8086/8088的中断允许标志IF有何区别?在中断响应过程中,它们怎样配合起来工作?
2.用8K×8位的RAM芯片,8K×8位的EPROM芯片和3-8译码器74LS138构成一个16K×16位的RAM和16K×16位的ROM存储器,8086工作在最小模式,各需要多少芯片?画出该存储器的组成框图及其与CPU的连接图,写出各芯片的地址范围。
3.根据总线所处位置可分为哪几类?总线操作可分为哪几个阶段?RS-232C串行总线是用于哪两个设备间的串行通信标准?该标准包括哪些内容?
4.A/D转换器与系统连接时需要考虑哪些问题?一个完整的微机的A/D、D/A通道应包括哪几部分?
五、应用题(每小题12分,共36分)1.某微机系统中使用1片8253,其端口地址为300H、301H、302H、303H,系统提供的计数脉冲频率为500KHz,CLK1由8253内其它计数器提供,对8253的初始化程序如下所示,阅读该程序,请完成:(1)对程序加上适当注释。
(2)指出各计数器的工作方式、计数初值。
(3)各个计数器输出的定时信号形式及周期或频率。
(4)画出8253及其与系统总线的硬件连接图(端口译码电路用框图表示即可)。MOV DX, 303 MOV AL, 36H OUT DX, AL MOV DX, 300H MOV AL, 0F4H OUT DX, AL MOV AL, 01H OUT DX, AL OUT DX, 303H MOV AL, 54H OUT DX, AL MOV DX, 301H MOV AL, 0AH OUT DX, AL
2.8088系统中用8255A作打印机接口电路,用PA口作数据输出,CPU采用中断方式与8255A传送数据,要求输出一个数据后,从8255A的PC上输出一个负脉冲作为打印机的输入选通信号。设8255A的端口地址为80H、81H、82H和83H,输出数据存放在内存中2000H:3000H开始的单元中,中断服务程序的入口地址为3000H:2000H,中断类型码为11。要求:
(1)编写完成上述要求的初始化程序(即主程序)和输出10个字符的中断服务字程序。
(2)所有程序均应加适当注释和必要参数说明。
3.按下列要求对8251A进行初始化,并加适当注释。
(1)要求工作于异步方式,波特率系数为16,奇校验,8位数据位,1位停止位。(2)允许接收、允许发送、全部错误标志复位。
(3)查询8251A的状态字、当接收准备就绪时,则从8251A输入数据,否则等待。设8251A的控制口地址为3F2H,数据口地址为3F0H。
第五篇:微机原理复习题及答案
一、填空题
1.Rfb是运放 电阻,被放在。2.DAC0832内部有 地和 地。3.LE是DAC0832内部寄存器的锁存命令。当其为 时,寄存器输出随 变化。
4.当LE为0时,数据 在寄存器,不再随 上的数据变化而变化。5.在过程控制应用中,有时对控制量的输出要求是 的,在给定值时产生的偏差不改变控制量的,这时可采用单极性输出电路。6.在随动系统中,由偏差所产生的控制量仅 不同,而且控制量 不同,这时要求D/A转换器有双极性输出;7.D/A转换器实现双极性输出,在输出除需要有运算放大器外还应增加
和。
8.若D/A转换器芯片内部有锁存寄存器,微处理器就把D/A芯片当作一个并行;若D/A转换器芯片内部无锁存寄存器,微处理器就把D/A芯片当作一个并行。
9.ADCO809是CMOS的 位 转换器。
10.ADCO809的引脚EOC是 信号,可作为。
二、单项选择题
1.ADC0809启动A/D转换的方式是。
A)高电平B)负电平C)负脉冲 D)正脉冲 2.ADC0809的输出。
A)具有三态缓冲器,但不可控 B)具有可控的三态缓冲器 C)没有三态 缓冲器 D)没有缓冲锁存
3.ADC0809可以用()引线经中断逻辑向CPU申请中断。A)OE B)START C)EOC D)ALE
三、多项选择题
1.DAC0832有()工作方式。
A)单缓冲 B)双缓冲 C)多级缓冲 D)直通
2.ADC0809与微机系统相连接,可采用的数据传输方式有。A)无条件传输 B)查询传输 C)中断传输 D)DMA传输
四、简答题
1、已知某DAC的最小分辨电压VLSB=5mV,满刻度输出电压Vom=10V,试求该电路输入二进制数字量的位数n应是多少?
2、A/D转换器和微机接口中的关键问题有哪些?
3、A/D转换器为什么要进行采样?采样频率应根据什么选定?
4、若ADC输入模拟电压信号的最高频率位20KHz,取样频率的下限是多少?
5、双积分式ADC电路中的计数器是十进制的,最大计数容量N=(1000)10,时钟脉冲频率为5KHz,完成一次转换最长需要多少时间?
6、设被测温度的变化范围为300℃~1000℃,如要求测量误差不超过±1℃,应选用分辨率为多少位的A/D转换器?
7、模-数转换器ADC常用的有双积分式和逐次逼近式,请扼要比较它们的优缺点。在微机控制系统的模拟输入通道中常常应用采样-保持电路,其主要原因是什么?
五、编程应用题
1.设状态端口地址为86H,数据端口的地址为87H,外部输入信息准备好状态标志为D7=1,请用查询方式写出读入外部信息的程序段。2.设状态端口地址为76H,数据端口地址为75H,外部设备是否准备好信息 由D7位传送,D7=0为未准备好(忙),请用查询方式写出CPU向外部传送数据的程序段。3.数据采集系统电路如下图所示。图中A/D转换器为ADCO809,定时器/计数器8233-5的计数器1将5MHz时钟转换成500KHz提供给ADC0809。根据上述电路和说明,以及下面程序的功能要求,在空格中填入相应的指令(必要时可增减空格数)。
MOV DX,3DBH;设置8253一控制字 MOV AL,57H OUT DX,AL(1);设且计数器1计数初值(2)(3);ADCO809模拟通道IN5采样12次,数据存人BUF MOV BX,OFFSETBUF MOV CX,l2(4)LOP:(5)CALL DELAY lS;软件延时一秒(6);数据读入BUF MOV [BX],AL INC BX LOOP LOP
4、已知A/D变换器的引线及其工作时序如下图所示。利用START负脉冲可启动A/D变换器开始变换,启动脉冲后A/D变换器进入忙(BUSY)状态,待变换结束。BUSY变高电平,可从D0~D10取得变换好的数据。试通过8255将此A/D变换器接到8088系统总线上,接口地址8000H-800F可任选,试画出连接线。
答案
一、填空题
1、反馈电阻;芯片内部
2、模拟;数字3、1;输入
4、锁存;数据总线
5、单向;极性
6、大小;异性
7、运放;VREF
8、输出接口;输出外部设备 9、8位;A/D
10、转换结束;中断请求信号
二、单项选择题
1、C
2、B
3、A
三、多项选择题
1、ABD
2、BCD
四、简答题
1、答: 2
2、答: A/D转换器和微机接口时的关键问题主要有6个。① A/D转换器输出和CPU的接口方式,主要有2种连接方式:
一种是A/D芯片输出端直接和系统总线相连;另一种是A/D芯片输出端通过接口电路和总线相连。② A/D转换器的分辨率和微机数据总线的位数匹配:当10位以上的A/D转换器和8位数据总线连接时,由于数据要按字节分时读出,因此从8位数据线上需分2次来读取转换的数据。设计接口时,数据寄存器要增加读写控制逻辑。③ A/D转换的时间和CPU的时间配合问题:要注意A/D转换的启动方式,通常启动信号分为电平控制启动和脉冲启动两种。其中又有不同的极性要求。还要注意转换后信号的处理。④A/D的控制和状态信号。因为A/D转换器的控制和状态信号的类型与特征对接口有很大影响,在设计时必须要注意分析控制和状态信号的使用条件。⑤ 输入模拟电压的连接,特别是多路模拟电压的切换控制。⑥ 接地问题,为了减轻数字信号脉冲对模拟信号的干扰,数字地和模拟地要正确连接。
3、答: 因为被转换的模拟信号在时间上是连续的,瞬时值有无限多个,转换过程需要一定的时间,不可能把每一个瞬时值都一一转换成模拟量。因此对连续变化的模拟量要按一定的规律和周期取出其中的某一瞬时值,这个过程就是将模拟量离散化,称之为采样,采样以后用若干个离散的瞬时值来表示原来的模拟量。
通常为了使A/D输出信号经过D/A还原后能更好地反映输入模拟信号的变化,根据采样定理,采样频率一般要高于或至少等于输入信号中最高频率分量的2倍,就可以使被采样的信号能够代表原始的输入信号。在输入信号频率不是太高的实际应用中,一般取采样频率为最高频率的4~8倍。
4、答:取样频率的下限为20kHZ×2=40 kHZ
5、答:由于双积分式A/D的工作模式是固定时间正向积分、固定斜率反向积分。正向积分与反向积分的切换是由正向积分开始时计数器从0计数到计满后产生的溢出信号控制,较高的反极性的基准电压进入积分器反向积分(因为反向斜率值大于正向斜率值,一般反向积分时间要小于正向积分时间),计数器再次从0开始计数,直至反向积分至0时停止计数,此时的计数值就是对应的输入量的变换数字量。因此完成一次转换的最长时间不大于2倍正向积分时间(即计数器从0到计满时间的2倍)。
6、答:取最大的温度变化范围1000O,最小的温度分辨为1O,这样只要不少于1000等份就可以。因此可选10位A/D转换器,若它的满量程是1000O,最小的温度分辨为
7、答:逐次逼近ADC采用的是二分搜索、反馈比较、逐次逼近的转换原理。其优点是转换速度快,转换精度高;缺点是输入模拟信号变化速度较快时,伟产生较大的非线型误差。
双积分ADC的优点是不需要ADC,能以低成本实现高分文辨率,转换精度高,抗干扰 能力强。缺点是需要二次积,转换速度慢。
当输入模拟信号变化率较大时,逐次逼近式ADC会产生相当大的非线性误差,为改善这种情况,可在ADC前面增加一级采样保持电路。
五、编程应用题
1、答案:START:IN AL,86H
TEST AL,80H
JZ START
IN AL,87H
2、答案:START:IN AL,76H
TEST AL,80H
JZ START
MOV AL,输出的字节
OUT 75H,AL
3、答案:(1)MOV DX,3D9H
(2)MOV AL,10H
(3)OUT DX,AL
(4)MOV DX,3D5H
(5)OUT DX,AL
(6)MOV DX,3D0H
IN AL,DX