山东交通学院 微机原理 带答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理
1.十六进制数0ACH转换成二进制数是()。
A. 10111010
B. 10101100
C. 11001101
D. 11001011
2.二进制数10100001B的补码是()。
A. 11011111B
B. 01011111B
C. 11100000B
D. 01100000B 3. MOV AX,7749H
MOV BX,2980H
ADD AL,BH
DAA
上述4条指令执行后,(AX)= ()
A. 817DH
B. 8183H
C. 5872H
D. 7778H
4.IN AL,n 指令中n是()
A. 8位二进制数
B. 16位二进制数
C. 8位或16位二进制数均可
D. 用AL时是8位;用AX时是16位5.8086 CPU内标志寄存器中的控制标志占( ) 位。
A.9
B.6
C.3
D.16
6.AND,OR,XOR,NOT为四条逻辑运算指令,下面的解释正确的是( )
A.指令XOR AX,AX执行后,AX内容不变,但设置了标志位
B.指令OR DX,1000H执行后,将DX最高位置1,其余各位置0
C.指令AND AX,OFH执行后,分离出AL低四位
D.NOT AX,执行后,将AX清0
7.8086的寻址能力为( )。
A. 20MB
B. 1MB
C. 64KB
D. 4MB
8. A的ASCII码值为65D,ASCII码值为67D的字母是()。
A. B
B. C
C. D
D. E
9. REPZ CMPSW指令,重复执行的终止条件是( )
A.CX=0或ZF=0
B.CX=0且ZF=0
C.CX=0或ZF=1
D.CX=0且ZF=1
10. 设BL=0AH,下列指令执行后能使BL=05H的是( )
A.NOT BL
B.AND BL,0FH
C.XOR BL,0FH
D.OR BL,0FH
评分标准:每小题2分,错选、漏选、多选均不得分。二、填空题(每空2分,共20分)
1.ES表示附加段寄存器。
2.指令指针寄存器中存放的是下一条指令的偏移地址。
3.堆栈的工作方式是后进先出。
4.在8086中,段寄存器CS=1200H,指令指针寄存器IP=0F00H,此时指令的物理地址为:12F00H 。
5.实现BX寄存器和DX寄存器的内容相加,结果存入DX寄存器的指令是 ADD DX,BX 。
6.设DX和DI存放的是无符号数,执行比较指令CMP DX,SI,若DX > DI,则转到ABOVE 处执行的指令是 JA ABOVE或JNBE ABOVE 。
7. 若DS=0F3EH,SI=2000H,COUNT=0A8H,指令MOV AX,(SI+COUNT)中,源操作数的有效地址EA为__20A8H______,其物理地址为___11488H_____。
8. 已知(SP)=1000H,(SS)=3000H,(31000H)=2000H,(DS)=4000H,(BX)=1200H,则 POP [BX] 指令执行完后(SP)= 1002H ,(41200H)= 2000H (一个字的内容)。
三、简答题(每题10分,共40分)
1.设DS=1000H,ES=2000H,SS=3500H,SI=00A0H,DI=0024,BX=0100H,BP=0200H,数据段中VAL的偏移地址为0030H,试说明下列源操作数字段的寻址方式是什么?物理地址是什么?(10分)
(1)MOV AX,[100H] 答:直接寻址方式,物理地址=10100H
(2)MOV AX,ES:[BX] 答:寄存器间接寻址方式,物理地址=20100H
(3)MOV AX,[BP] 答:寄存器间接寻址方式,物理地址=35200H
(4)MOV AX,[BX+10] 答:寄存器相对寻址方式,物理地址=10110H
(5)MOV AX,[BX+DI+VAL] 答:相对基址变址寻址方式,物理地址=10154H
评分标准:每小题2分,寻址方式、物理地址各1分。
2.通过示意图说明下列数据定义程序段从0000H开始对内存单元的分配情况。(写出X和Y的地址,并画出每个单元中所存内容,已知'a'的ASCII码为61H,'A'的ASCII 码为41H)(10分)
data segment ;数据段
X db '9',20H
db 2 dup(100),?
Y db 'aBC'
data ends
答:X=0000H,Y=0005H,从X开始依次存放39H,20H,64H,64H,--,61H,42H,43H
评分标准:X、Y正确各得1分,每个单元存放内容正确各得1分。
3.补充代码,实现:当BX高4位全为0时,使AX=0;否则使AX=1。(10分)
test BX, 0f000h
jz zero
mov BX,-1 jmp OK
zero :mov AX,0 OK :.exit 0 评分标准:每空2分。 4、写程序运行结果(每空2分,共10分) 1)MOV AL ,39H 2)MOV AL ,45h
MOV BH ,27H OR AL ,31H
ADD AL ,BH
DAA 运行后 AH = 75 H
运行后 AL = 66 H ZF = 0 CF = 0 CF= 0 四、应用题(每题10分,共计20分) 1、编写程序:将字符串 'ab$c12$798$'中的'$'替换成空格。(写出完整的程序定义格式)(10分) .model small .data string db 'ab$c12$798$'
count equ $-string ;count=$-string
.stack .code .startup mov cx,count lea si,string mov al, '$'
strc: cmp al, [si]
jnz next
mov bl,20h
mov [si], bl
next:inc si
loop strc .exit 0 End
2、(10分)编写程序:从键盘上输入一个字符,如果是大写字母,则转换成小写并输出;否则原样输出。
要求:先画出流程图,再以简化段定义格式编写完整的程序。
.model small .stack
.data .code
.startup
Mov ah,1 Int 21h Cmp al,’A ’
Jb next Cmp al,'Z ’ Ja next add al,20h mov dl,al
Next:mov ah,02h
Int 21h .exit 0
end
评分标准:答案不唯一,逻辑正确即可得分。输入字符正确得2分,比较转移逻辑正确得2分,大小写字母转换正确得2分,字符输出正确得2分,流程图正确得2分,格式、语法错误较多扣1-3分。相同错误不重复扣分。
评分标准:答案不唯一,程序格式、语法正
确得
2分,程序初始化正确得2分,比较转
移正确得2分,替换正确得2分,循环正确
得2分。相同错误不重复扣分。