教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 法律文档 >

微机原理补充习题(2)

来源:网络收集 时间:2026-09-05
导读: 解:8086没有给段寄存器直接置值的指令,应该通过寄存器辗转设置。 (5) MOV [DI],[SI] 解:存储器单元之间不可直接传送,即两个操作数不能同为内存操作数。 (6) MOV AL,[CX] 解:CX不可以作为间址寄存器,只能用B

解:8086没有给段寄存器直接置值的指令,应该通过寄存器辗转设置。 (5) MOV [DI],[SI]

解:存储器单元之间不可直接传送,即两个操作数不能同为内存操作数。 (6) MOV AL,[CX]

解:CX不可以作为间址寄存器,只能用BX、BP、SI、DI。 (7) MOV AL,[SI] [DI]

解: 基址加变址寻址时 ,基址寄存器只能用BX或BP,变址寄存器只能用SI或DI,这里源操作数寻址用[SI+DI]是错误的。 (8) ADD BX,DS

解:DS段寄存器不能当通用寄存器用,故不可以出现在ADD指令中。 (9) INC [BX]

解: [BX]寻址数据类型不明确,应加类型说明 BYTE PTR [BX] 或 WORD PTR [BX]。 (10) SHL AX

解:缺少一个操作数。正确格式应为SHL AX, 1或SHL AX, CL(1或CL为移位次数)。 (11) MOVSB [DI] ,[SI]

解:MOVSB后不能加操作数,正确格式应为MOVSB。 (12) MOV 1000H,AX

解:立即数不能用作原操作数。 (13) SHL AX,5

解:原操作数应为1或CL,不能是大于1的数。大于1的数应放置在 CL中。 (14) DEC AX,5

解:DEC是减1指令没有原操作数。 (15) AAA BX

解:AAA是调整指令没有操作数(操作数是隐含的AL或AX)。 2.设DS=1000H,SS=2000H,AX=1A2BH,BX=1200H,CX=339AH,BP=1200H, SP=1352H,SI=1354H,

(11350H)=0A5H,(11351H)=3CH,(11352H)=0FFH,(11353H)=26H,(11354H)=52H,(11355H)=0E7H,(126A4H)=9DH,(126A5H)=16H,(21350H)=88H,(21351H)=51H

下列各指令都在此环境下执行,在各小题的空格中填入相应各指令的执行结果 MOV AX,1352H 解:AX=1352H

(1) MOV AX,[1352H] 解:AX=26FFH

(2) MOV 0150H [BX],CH

解:(11350H)=33H, (11351H)=3CH (3) MOV AX,0150H [BP] 解:AX=5188H (4) POP AX

解:AX=(21352H), SP=1354H (5) ADD [SI],CX

解:(11354H)=0ECH, (11355H)=1AH, SF=0, ZF=0, PF=1, CF=1, OF=0 (6) SUB BH,0150H [BX] [SI]

解:BH=75H, SF= 0, ZF=0, PF=0, CF=1, OF=0 (7) INC BYTE PTR 0152H [BX]

解:(11352H)=00H, (11353H)=26H, CF=0 (8) INC WORD PTR 0152H [BX]

解:(11352H)=00H, (11353H)=27H, CF=0 (10) SAR BYTE PTR 0150H [BX],1 解:(11350H)=0D2H, CF=1, OF=0 (11)SAL BYTE PTR 0150H [BX],1

解:(11350H)=4AH, CF=1, OF=1

程序与程序设计题

一、程序分析题

1 .MOV AL,10 ADD AL,AL SHL AL,1 MOV BL,AL ADD AL,BL

问:AL= BL=

解: AL=50H(或80)BL=28H(或40) 2. MOV BX,00FFH AND BX,0FFFH OR BX,0F0FH XOR BX,00FFH

问:BX= 解:2. BX=0F00H

3. XOR AX,AX MOV BX,2 MOV CX,10 LP:ADD AX,BX ADD BX,2 LOOP LP HLT

(1)该程序的功能是什么?

(2)程序执行后,AX= BX= CX= 解:(1)求2~20间的偶数和。(完成累加求和,即求:2+4+6+8+10+12+14+16+18+20)。 (2)AX=110,BX=22,CX=0 4.设DS=1000H,有如下数据段: DATA SEGMENT

ORG 10011

Xl DW 11H,22H,33H X2 DB 33H,44H,55H Y1 EQU 4321H Y2 EQU $- X2 X3 DB 88H,99H DATA ENDS

(1)该数据段共占用多少字节的存储单元? (2) Y1和Y2的值为多少?X3的值是多少? 解:(1)该数据段共占用11个字节

(2)Yl =4321H,Y2=3,X3=109H这里X3是用DB定义的,它是变量名。它的偏移地址为109H。Y1和Y2是由EQU定义的,它们是符号名,是常量。

5.下列程序段执行后,寄存器AX、BX和CX的值各为多少? ORG 1200H DA1 DW 100 ┆

MOV AX,DA1

MOV BX,0FFSET DA1

MOV CL,BYTE PTR DA1+1 MOV CH,TYPE DA1 HLT

解: AX=0064H BX=1200H CX=6400H

6.有数据段如下:

DATA SEGMENT ORG 1200H

BUF DB 5,6,‘78’ X1 DW 1,37H,46H Y1 EQU X1-BUF DATA ENDS

(1)该程序段占有的存储单元字节数是多少? (2)Y1的值是多少? 解:(1)占10个字节单元 (2)Y1=2

二、程序填空题

1. AX中有一个无符号数,若其值小于100,就加100;若其值大于等于100,就减50,但计算结果仍保存在AX中。在下面程序段每一空白处填上一条适当指令,以实现其功能。

CMP AX,100 SUB AX,50 PP:ADD AX,100 DONE:HLT 解:第一空白处填JC PP 第二空白处填JMP DONE

2.下面程序段判断A单元的值,并根据其值是负数、0或正数,分别将0FFH,00H,01H送入AL中。在空白处填入适当指令。

MOV AL,A CMP AL,0 JZ SYM

MOV AL,OFFH JMP DONE

SYM:MOV AL,1 DONE:HLT

解:第一个空填JZ DONE,因为程序已经给AL赋值,若AL等于0的话,AL中放的结果值也为0,所以转DONE即可。第二个空应填TEST AL,80H,因为其下面一条指令是JE SYM,其上一条指令应能影响ZF标志位,所以使用测试指令;即为0时(正数时)转SYM,给AL赋1。为非零时,即为负数时AL赋OFFH。

所以答案为:JZ DONE或JE DONE

TEST AL,80H或AND AL,80H 3.对于符号函数

?1当X〉0 ??Y??0当X?0??1当X〈0?? 请在下面程序段中每一空白处填上一条适当指令,实现符号函数功能。

MOV AL,X CMP AL,0 MOV Y,1 AA:JL BB

MOV Y,0

BB:MOV Y,0FFH DONE:HLT

解:第一空处填:JLE AA 第二空处填:JMP DONE 第三空处填:JMP DONE

三、编制程序

1.写出完成下列功能的程序段:

(1) 在数据段中,字变量DAT1有两个数据:1122H和3344H,字变量DAT2有两个数据:5566H和7788H,字变量DAT3为两个空单元。

(2)将DAT1的第二个字数据传送到AX。

(3) 将AX内容与DAT1的第一个字数据相减,将其差存人到DAT3的第一个字单元中。

(4)将DAT2中的第一个字送AX,并与DAT2中第二个字相加,其和存于DAT2的第一个字单元中。 (5) 将DAT2中的字单元数据除以DAT3第一个字单元中的数据,其商存于DAT3的第二个字单元中。

解: DATA SEGMENT

DAT1 DW 11 …… 此处隐藏:3148字,全部文档内容请下载后查看。喜欢就下载吧 ……

微机原理补充习题(2).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/436117.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)