微机习题及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、对于下列二进制数,如果为无符号数,值为多少?如果为带符号数,值又为多少?(1)01011010 (2)10110110 (3)10001101 (4)11111001
2、求下列机器数的原码、反码和补码。
(1)01000000 (2)01111101 (3)10000010 (4)11111111
1、
(1)01011010 无符号数:90,带符号数:+90
(2)10110110 无符号数:182,带符号数:-54
(3)10001101 无符号数:141,带符号数:-13
(4)11111001 无符号数:249,带符号数:-121
2、
(1)01000000 原码、反码和补码都为01000000
(2)01111101 原码、反码和补码都为01111101
(3)10000010 原码、反码和补码分别为10000010、11111101、11111110
(4)11111111 原码、反码和补码分别为11111111、10000000、10000001
1.对于8086CPU,假设(DS)=0260H,(CS)=0540,(SS)=2200H。
(1)在数据段可存储的数据最多为多少字节?首末地址各位多少?
(2)堆栈段可最多存多少个16位的字?
(3)代码段可最多存多少个字节的程序?其首末地址是多少?
2.某数据段由52个字节组成,其起始地址为BA2CH:1051H,试确定该数据段的首末单元
的实际地址。
3.若8086CPU工作于最小模式,试指出当CPU完成将AH的内容送到物理地址为 91001H
的存储单元操作时,以下哪些信号应为低电平:M/IO、RD、WR、BHE/S7、DT/R?
若CPU完成的是将物理地址91000H单元的内容送到AL中,则上述哪些信号应为低电平?
4.8086CPU读/写总线周期各包含多少个时钟周期?什么情况下需要插入Tw周期?应插入
多少个Tw取决于什么因素?
1、答:(1)数据段可存放最多64KB,首地址是02600H,末地址是125FFH;
(2)堆栈段可存放最多32K个16位的字;
(3)代码段可最多存64KB的程序,首地址是05400H,末地址是153FFH
2、答:首地址:BA2CH×10H+1051H=BB311H,末地址:BB311H+34H-1=BB344H
3、答:(第一问)WR、BHE/S7;(第二问)RD、DT/R
4、8086CPU读/写总线周期各包含4个基本时钟周期(即T1、T2、T3、T4状态),当外设没有准备就绪时,需要在T3状态后插入Tw周期,应插入个Tw取决于外设是否准备就绪。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 AL,35H
MOV DL,AL
AND DL,0FH
AND AL,0F0H
MOV CL,4
SHR AL,CL
MOV BL,10
MUL BL
ADD AL,DL
执行之后,AL等于多少?该程序段完成了什么功能?
答:程序段执行后AL=23H。该程序段实现了将AL中的1个组合BCD码转换为十六进制数并存回AL中的功能。
1.已知某数据段从物理地址03000H处开始,定义如下:
D SEG SEGMENT
ORG 2000H
A1 DD 2 DUP(7,1,?)
A2 DB 10 DUP(0,4,3 DUP(2),5)
CNT EQU 20H
A3 DW 100 DUP(?)
D SEG ENDS
请分别用分析运算符SEG、OFFSET、LENGTH、SIZE、TYPE求出
A1、A2、A3的段基址、偏移量、类型及它们的LENGTH、SIZE。
答:(SEG A1)=0300H,(OFFSET A1)=2000H,(TYPE A1)=4,
(LENGTH A1)=2,(SIZE A1)=2×4=8;
(SEG A2)=0300H,(OFFSET A2)=2018H,(TYPE A2)=1,
(LENGTH A2)=10,(SIZE A2)=10×1=60;
(SEG A3)=0300H,(OFFSET A3)=2054H,(TYPE A3)=2,
(LENGTH A3)=100,(SIZE A3)=100×2=200
2.已知有一个长100个字的数据块,存放在以3DA0H:1000H开始的存储区域内。试编写一个完整的汇编语言程序,将该数据块复制到以3DA0H:1008H开始的存储区内。
答:一种可能的程序如下实现:
DATA SEGMENT AT 3DA0H
ORG 1000H
BLOCK DW 104 DUP(?)
DATA ENDS
SSEG SEGMENT PARA STACK‘SSEG’
DB 100 DUP(?)
SSEG ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:SSEG,DS:DATA,ES:DATA
MAIN PROC FAR
PUSH DS
MOV AX,0
PUSH AX
MOV AX,SEG BLOCK
MOV DS,AX