文档详情

微机原理习题答案4.doc

发布:2024-12-22约9.08千字共11页下载文档
文本预览下载声明

微型计算机原理第4章习题参考答案

4.1已知某数据段中有

COUNT1EQU16H

COUNT2DW16H

下面两条指令有何异同。

MOVAX,COUNT1

MOVBX,COUNT2

解:同:执行完之后,AX=BX=16H

异:MOVAX,COUNT1向AX中传送的是立即数,而MOVBX,COUNT2向BX中传送的是变量内容。

4.2下列程序段执行后,寄存器AX、BX和CX的内容分别是多少?

ORG0202H

DA-WORDDW20H

MOVAX,DA-WORD ;AX=0020H

MOVBX,OFFSETDA-WORD ;BX=0202H

MOVCL,BYTEPTRDA-WORD ;CL=20H

MOVCH,TYPEDA-WORD ;CH=02H

解:AX=0020H,BX=0202H,CX=0220H

4.3设平面上有一点P的直角坐标(x,y),试编制完成以下操作的程序:

如P点落在第I象限,则K=I;

如P点落在坐标轴上,则K=0。

解:

DATSEGMENT

msg dbpleaseinputnumberonly!$

MSG1 DB10,13,INPUTX:$

MSG2 DB10,13,INPUTY:$

xbuf db20,0

xbuf1 db20dup(?)

ybuf db20,0

ybuf1 db20dup(?)

D1 DB10,13,K=

D2 DB?,$

DAT ENDS

COD SEGMENT

ASSUMECS:COD,DS:DAT

BG: MOVAX,DAT

MOVDS,AX

movdx,offsetmsg

movah,9

int21h

MOVDX,OFFSETMSG1

MOVAH,9

INT21H

movdx,offsetxbuf

MOVAH,0AH

INT21H

MOVDX,OFFSETMSG2

MOVAH,9

INT21H

movdx,offsetybuf

MOVAH,0AH

INT21H

CMPybuf1,0

JEPRO1

CMPxbuf1,0

JEPRO1

cmpxbuf1,-

JzPRO2

CMPybuf1,-

JePRO4

MOVD2,1

JMPSHOW

PRO1: MOVD2,0

JMPSHOW

PRO2: CMPybuf1,-

JePRO3

MOVD2,2

JMPSHOW

PRO3: MOVD2,3

JMPSHOW

PRO4: MOVD2,4

SHOW: MOVDX,OFFSETD1

MOVAH,9

INT21H

movah,4ch

int21h

COD ENDS

ENDBG

4.4试编制一程序,把CHAR1中各小写字母分别转换为对应的大写字母,并存放于CHAR2开始的内存单元中。

CHARDB‘abcdef’

CHAR2DB$—CHAR1DUP(0)

解:

DAT SEGMENT

CHAR1 DBabcdefgh

CHAR2 DB$-CHAR1DUP(0)

N EQU$-CHAR2

DAT ENDS

COD SEGMENT

ASSUMECS:COD,DS:DAT

BG: MOVAX,DAT

MOVDS,AX

MOVSI,0

MOVCX,N

LP: MOVAL,CHAR1[SI]

SUBAL,20H

MOVCHAR2[SI],AL

INCSI

LOOPLP

MOVAH,4CH

INT21H

COD ENDS

ENDBG

4.5试编写一程序,把DABY1字节单元中数据分解成3个八进制数,其最高位八进制数据存放在DABY2字节单元中,最低位存放在DABY2+2字节单元中。

DABY1DB6BH

DABY2DB3DU

显示全部
相似文档