微机接口答案.docx

上传人:b****6 文档编号:3105884 上传时间:2022-11-17 格式:DOCX 页数:93 大小:599.81KB
下载 相关 举报
微机接口答案.docx_第1页
第1页 / 共93页
微机接口答案.docx_第2页
第2页 / 共93页
微机接口答案.docx_第3页
第3页 / 共93页
微机接口答案.docx_第4页
第4页 / 共93页
微机接口答案.docx_第5页
第5页 / 共93页
点击查看更多>>
下载资源
资源描述

微机接口答案.docx

《微机接口答案.docx》由会员分享,可在线阅读,更多相关《微机接口答案.docx(93页珍藏版)》请在冰豆网上搜索。

微机接口答案.docx

微机接口答案

第三章

1.分别说明以下指令的源操作数和目的操作数各采用什么寻址方式。

〔1〕MOVAX,2408H〔2〕MOVCL,0FFH〔3〕MOVBX,[SI]

〔4〕MOV5[BX],BL〔5〕MOV[BP+100H],AX〔6〕MOV[BX+DI],’$’

〔7〕MOVDX,ES:

[BX+SI]〔8〕MOVVAL[BP+DI],DX

〔9〕INAL,05H〔10〕MOVDS,AX

答:

〔1〕立即数,存放器〔2〕立即数,存放器〔3〕存放器间接,存放器

〔4〕存放器,存放器相对〔5〕存放器,存放器相对〔6〕立即数,基址变址

〔7〕基址变址,存放器〔8〕存放器,相对基址变址

〔9〕直接端口寻址,存放器〔10〕存放器,存放器

2.:

DS=1000H,BX=0200H,SI=02H,内存10200H~10205H单元的内容分别为10H,

2AH,3CH,46H,59H,6BH。

以下每条指令执行完后AX存放器的内容各是什么?

〔1〕MOVAX,0200H〔2〕MOVAX,[200H]〔3〕MOVAX,BX

〔4〕MOVAX,3[BX]〔5〕MOVAX,[BX+SI]〔6〕MOVAX,2[BX+SI]

答:

〔1〕0200H〔2〕2A10H〔3〕0200H

〔4〕5946H〔5〕463CH〔6〕6B59H

3.设DS=1000H,ES=2000H,SS=3500H,SI=00A0H,DI=0024H,BX=0100H,BP=0200H,

数据段中变量名为VAL的偏移地址值为0030H,试说明以下源操作数字段的寻址方式是什

么?

物理地址值是多少?

〔1〕MOVAX,[100H]〔2〕MOVAX,VAL〔3〕MOVAX,[BX]

〔4〕MOVAX,ES:

[BX]〔5〕MOVAX,[SI]〔6〕MOVAX,[BX+10H]

〔7〕MOVAX,[BP]〔8〕MOVAX,VAL[BP][SI]

〔9〕MOVAX,VAL[BX][DI]〔10〕MOVAX,[BP][DI]

答:

〔1〕直接,10100H〔2〕直接,10030H〔3〕存放器间接,10100H

〔4〕存放器间接,20100H〔5〕存放器间接,100A0H〔6〕存放器相对,10110H

〔7〕存放器间接,35200H〔8〕相对基址变址,352D0H

〔9〕相对基址变址,10154H〔10〕基址变址,35224H

4.写出以下指令的机器码

〔1〕MOVAL,CL〔2〕MOVDX,CX〔3〕MOV[BX+100H],3150H

答:

〔1〕1000101011000001B

〔2〕1000101111010001B

〔3〕110001111000011100000000000000010101000000110001B

5.程序的数据段为:

DATASEGMENT

ADB‘$’,10H

BDB‘COMPUTER’

CDW1234H,0FFH

DDB5DUP(?

EDD1200459AH

DATAENDS

求以下程序段执行后的结果是什么。

MOVAL,A

MOVDX,C

XCHGDL,A

MOVBX,OFFSETB

MOVCX,3[BX]

LEABX,D

LDSSI,E

LESDI,E

答:

MOVAL,AAL=24H

MOVDX,CDX=1234H

XCHGDL,ADL=24H,A=34H

MOVBX,OFFSETBBX=2

MOVCX,3[BX]CX=5550H

LEABX,DBX=000EH

LDSSI,EDS=1200H,SI=459AH

LESDI,EES=1200H,DI=459AH

6.指出以下指令中哪些是错误的,错在什么地方。

〔1〕MOVDL,AX〔2〕MOV8650H,AX〔3〕MOVDS,0200H

〔4〕MOV[BX],[1200H]〔5〕MOVIP,0FFH〔6〕MOV[BX+SI+3],IP

〔7〕MOVAX,[BX][BP]〔8〕MOVAL,ES:

[BP]〔9〕MOVDL,[SI][DI]

〔10〕MOVAX,OFFSET0A20H〔11〕MOVAL,OFFSETTABLE

〔12〕XCHGAL,50H〔13〕INBL,05H〔14〕OUTAL,0FFEH

答:

〔1〕长度不匹配〔2〕立即数不能做目的操作数

〔3〕段存放器不能用立即数赋值〔4〕两个内存单元不能直接传送数据

〔5〕IP不能用指令直接修改〔6〕指令中不能出现IP

〔7〕BX/BP应与SI/DI搭配〔8〕正确

〔9〕SI/DI应与BX/BP搭配〔10〕OFFSET后应跟内存单元

〔11〕偏移地址为16位,AL长度不够〔12〕立即数不能用于XCHG

〔13〕IN必须用AL/AX〔14〕操作数顺序反向;地址应为8位

7.当前数据段中有一个十进制数字0~9的7段代码表,其数值依次为40H,79H,24H,

30H,19H,12H,02H,78H,00H,18H。

要求用XLAT指令将十进制数57转换成相应的

7段代码值,存到BX存放器中,试写出相应的程序段。

答:

DATASEGMENT

TABLEDB40H,79H,24H,30H,19H,12H,02H,78H,00H,18H

DATAENDS

……

MOVAL,5

MOVBX,OFFSETTABLE

XLATTABLE

MOVCL,AL

MOVAL,7

XLATTABLE

MOVBL,AL

MOVBH,CL

8.当前SS=1050H,SP=0100H,AX=4860H,BX=1287H,试用示意图表示执行以下指

令过程中,堆栈中的内容和堆栈指针SP是怎样变化的。

PUSHAX

PUSHBX

POPBX

POPAX

〔1〕指

9.以下指令完成什么功能?

〔1〕ADDAL,DH〔2〕ADCBX,CX〔3〕SUBAX,2710H

〔4〕DECBX〔5〕NEGCX〔6〕INCBL

〔7〕MULBX〔8〕DIVCL

答:

〔1〕AL+DH→AL〔2〕BX+CX+CF→BX〔3〕AX-2710H→AX

〔__________4〕BX-1→BX〔5〕0-CX→CX〔6〕BL+1→BL

〔7〕AX*BX→DX,AX〔8〕AX/CL商→AL,余数→AH

10.AX=2508H,BX=0F36H,CX=0004H,DX=1864H,求以下每条指令执行后的结果

是什么?

标志位CF等于什么?

〔1〕ANDAH,CL〔2〕ORBL,30H〔3〕NOTAX

〔4〕XORCX,0FFF0H〔5〕TESTDH,0FH〔6〕CMPCX,00H

〔7〕SHRDX,CL〔8〕SARAL,1〔9〕SHLBH,CL

〔10〕SALAX,1〔11〕RCLBX,1〔12〕RORDX,CL

答:

〔1〕AX=0408H,CF=0〔2〕BX=0F36H,CF=0

〔3〕AX=0DAF7H,CF不变〔4〕CX=0FFF4H,CF=0

〔5〕DX=01864H,CF=0〔6〕CX=0004H,CF=0

〔7〕DX=0186H,CF=0〔8〕AX=2504H,CF=0

〔9〕BX=0F036H,CF=0〔10〕AX=4A10H,CF=0

〔11〕BX=1E6C/1E6DH,CF=0〔12〕DX=4186H,CF=0

11.假设数据段定义如下:

DATASEGMENT

STRINGDB‘ThePersonalComputer&TV’

DATAENDS

试用字符串操作等指令编程完成以下功能:

〔1〕把该字符串传送到附加段中偏移量为GET_CHAR开始的内存单元中。

〔2〕比拟该字符串是否与’TheComputer’相同,假设相同那么将AL存放器的内容置1,否那么置

0。

并要求将比拟次数送到BL存放器中。

〔3〕检查该字符串是否有’&’,假设有那么用空格字符将其替换。

〔4〕把字符串大写字母传送到附加段中以CAPS开始的单元中,其余字符传到以CHART

开始的单元中。

然后将数据段中存储上述字符串的单元清0。

答:

〔1〕CLD

LEASI,STRING

LEADI,GET_CHAR

MOVCX,26

REPMOVSB

〔2〕补充在附加段定义

STRING1DB‘Thecomputer’

MOVAL,1

CLD

LEASI,STRING

LEADI,STRING1

MOVCX,12

REPZCMPSB

JZSKIP

MOVAL,0

SKIP:

MOVBX,12

SUBBX,CX

〔3〕MOVAX,DATA

MOVES,AX

CLD

MOVAL,'&'

LEADI,STRING

MOVCX,26

NEXT:

REPNESCASB

JZFIND

JMPEXIT

FIND:

MOVBYTEPTR[DI-1],''

JCXZEXIT

JMPNEXT

EXIT:

〔4〕LEASI,STRING

LEADI,CAPS

LEABX,CHART

MOVCX,26

NEXT:

MOVAL,[SI]

CMPAL,’A’

JBOTHER

CMPAL,’Z’

JAOTHER

MOVES:

[DI],AL

INCDI

JMPSKIP

OTHER:

MOVES:

[BX],AL

INCBX

SKIP:

MOVBYTEPTR[SI],0

INCSI

LOOPNEXT

12.编程将AX存放器中的内容以相反的顺序传送到DX存放器中,并要求AX中的内容不

被破坏,然后统计DX存放器中‘1’的个数是多少。

答:

MOVBL,0

PUSHAX

MOVDX,0

MOVCX,16

NEXT:

SHLAX,1

JNCSKIP

INCBL

SKIP:

RCRDX,1

LOOPNEXT

STOP:

POPAX

13.设CS=1200H,IP=0100H,SS=5000H,SP=0400H,DS=2000H,SI=3000H,BX=0300H,

〔20300H〕=4800H,〔20302H〕=00FFH,TABLE=0500H,PROG_N标号的地址为1200:

0278H,PROG_F标号的地址为3400H:

0ABCH。

说明以下每条指令执行完后,程序将分别

转移到何处执行?

〔1〕JMPPROG_N

〔2〕JMPBX

〔3〕JMP[BX]

〔4〕JMPFARPROG_F

〔5〕JMPDWORDPTR[BX]

如将上述指令中的操作码JMP改成CALL,那么每条指令执行完后,程序转向何处执行?

请画图说明堆栈中的内容和堆栈指针如何变化。

答:

〔1〕1200H:

0278H

〔2〕1200H:

0300H

〔3〕1200H:

4800H

〔4〕3400H:

0ABCH

〔5〕00FFH:

4800H

将操作码JMP改成CALL后:

〔1〕1200H:

0278H

指令长度为3,那么IP=0100H+3=0103H,入栈

〔5〕00FFH:

4800H

指令长度为2,那么I

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1