微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx

上传人:b****1 文档编号:3959358 上传时间:2023-05-02 格式:DOCX 页数:69 大小:217.36KB
下载 相关 举报
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第1页
第1页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第2页
第2页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第3页
第3页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第4页
第4页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第5页
第5页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第6页
第6页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第7页
第7页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第8页
第8页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第9页
第9页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第10页
第10页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第11页
第11页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第12页
第12页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第13页
第13页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第14页
第14页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第15页
第15页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第16页
第16页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第17页
第17页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第18页
第18页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第19页
第19页 / 共69页
微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx_第20页
第20页 / 共69页
亲,该文档总共69页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx

《微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx(69页珍藏版)》请在冰点文库上搜索。

微型计算机技术孙德文版课后习题答案全解Word格式文档下载.docx

(5)AX=5188H;

SP=1352H

(6)[11354H]=ECH;

[11355H]=1AH;

SF==ZF=PF=OF=0;

CF=1

(7)BH=75H;

(8)[11352H]=00H;

[11353H]=26H;

CF不变

(9)[11352H]=00H;

[11353H]=27H;

(10)[11350H]=D2H;

CF=1;

OF=0

(11)[11350H]=4AH;

OF=1

3.3.设下列各转移指令的第一字节在内存中的地址为CS=2000H和IP=016EH,且环境均为;

DS=6000H,BX=16C0H,(616COH)=46H,(616C1H)=01H,(616C2H)=00H,(616C3H)=30H,(61732H)=70H,(61733H)=17H。

写出下列各无条件转移指令执行后CS和IP值。

各指令左首的16进制编码是该指令的机器码。

指令中的目的地址用相应的标号表示。

(1)EBE7JMPSHORTAGAIN

(2)E90016JMPNEARPTROTHER

(3)E3JMPBX

(4)FF67JMPWORDPTR0072H[BX]

(5)FFEBJMPDWORDPTR[BX]

(1)CS=2000H;

IP=0157H

(2)CS=2000H;

IP=1771H

(3)CS=2000H;

IP=16C0H

(4)CS=3000H;

IP=0146H

(5)CS=2000H;

IP=1770H

(6)CS=3000H;

3.4.阅读下列各小题的指令序列,在后面空格中填入该指令序列的执行结果。

(1)MOVBL,85H

MOVAL,17H

ADD,AL,BL

DAA

AL=,BL=,CF=

(2)MOVAX,BX

NOTAX

ADDAX,BX

INCAX

AX=,CF=

(3)MOVAX,OFF60H

STC

MOVDX,96

XORDH,OFFH

SBBAXDX

(4)MOVBX,OFFFEH

XOVCL,2

SARRX,CL

BX=,CF=

(1)AL=02H;

BL=85H;

(2)AX=0000H;

CF=0

(3)AX=0000H;

(4)BX=0FFFFH;

3.5.阅读分析下列指令序列

JNOL1

JNOL2

SUBAX,BX

JNCL3

JNOL4

JMPL5

若AX和BX的初始值分别如下列五种情况所示,则执行该指令序列后,程序将分别转向何处执行(注:

即写出转移去的目的地址L1~L5中的一个)。

(1)AX=14C6H,BX=80DCH

(2)AX=0B568H,BX=54B7H

(3)AX=42C8H,BX=608DH

(4)AX=0D023H,BX=9FD0H

(5)AX=9FD0H,BX=0D023H

(1)转向L1

(2)转向L1

(3)转向L2

(4)转向L5

(5)转向L5

3.6.ANDAL,AL

JZBRCH1

RCRAL,1

JZBRCH2

RCLAL,1

INCAL

JZBRCH3

上述程序运行后,试回答:

(1)当(AL)=时,程序转向BRCH1

(2)当(AL)=时,程序转向BRCH2

(3)当(AL)=时,程序转向BRCH3

(1)AL=00H

(2)AL=01H

(3)AL=0FFH

3.7.完成下列操作,选用什么指令:

(1)将AX的内容、减去0520H,和上次运算的借位;

(2)将变量名TABL的段地址送AX;

(1)SBBAX,0520H

(2)MOVAX,SEGTABL

3.8.D1DB20HDUP(?

D2DWD1

请写出用一条指令实现取D1的偏移地址→SI中的三种方法。

(1)MOVSI,OFFSETDI

(2)MOVSI,D2

(3)LEASI,DI

3.9.程序段1程序段2

MOVAX,147BHMOVAX,99D8H

MOVBX,80DCHMOVBX,9847H

ADDAX,BXSUBAX,BX

JNOL1JNCL3

JNCL2JNOL4

上述两个程序段执行后,分别转移到哪里?

(2)转向L3

3.10.MOVBX,0FFH

ANDBX,0FFFH

ORBX,0F0FH

XOR BX,00FFH

上述程序段运行后,BX=,CF=

BX=0F00H;

3.11.CMPAX,BX

JGENEXT

XCHGAX,BX

NEXT:

CMPAX,CX

JGEDONE

XCHGAX,CX

DONE:

试回答:

(1)上述程序段执行后,原有AX,BX,CX中最大数存放在哪个寄存器中?

(2)这三个数是带符号数还是无符号数?

AX;

带符号数

第4章

4.1画出下列语句中的数据在存储器中的存储情况。

ARRAYBDB63,63H,‘ABCD’,

3DUP(?

),2DUP(1,3)

ARRAYWDW1234H,5,‘AB’,‘CD’,?

2DUP(1,3)

解:

地址

数据

ARRAYB

3FH

42H

63H

41H

44H

43H

?

01H

00H

03H

34H

12H

05H

4.2.程序中数据定义如下:

DATA1DW?

DATA2DB32DUP(?

DATA3DD?

DLENGTHEQU$-DATA1

此时DLENGTH的值是多少?

DLENGTH=38=26H

4.3.程序中数据定义如下:

ARRAYDB‘ABCDEF’

RESULTDB?

TABLEDW20DUP(?

则执行指令MOVAX,TYPERESULT后,AX=?

MOVBX,TYPETABLE后,BX=?

MOVCX,LENGTHTABLE后,CX=?

MOVDX,LENGTHARRAY后,DX=?

MOVSI,SIZETABLE后,SI=?

MOVDI,SIZEARRAY后,DI=?

AX=1;

BX=2;

CX=20;

DX=1;

SI=40;

DI=1

4.4.指令ANDAX,7315HAND0FFH中,两个AND有什么差别?

这两个AND操作分别在什么时候执行?

左为助记符,由CPU执行指令时运算;

右为运算符,由汇编程序在汇编时运算。

4.5.设BX=1034H,则执行下列指令

MOV AX,BX AND 0FFH

MOV CX,BX EQ 1234H

后,AX和CX各为多少?

若BX=1234H,则结果如何?

AX=0034H;

CX=0000H;

CX=FFFFH

4.6.设已知语句为:

ORG0024H

DATA1DW4,12H,$+4

则执行指令MOV AX,DATA1+4后AX的值是多少?

AX=002CH

4.7.已知数据定义语句为:

BUFFERDB16DUP(O,2DUP

(1))

则其中字数据单元内容为0100H的单元数是多少?

16个

4.8.要在以DA1为首址的数据区中依次存放下列数据;

‘A’,‘B’,O,0,‘C’,‘D’,0,0

请分别用DB、DW和DD语句实现。

DATDB‘A’,‘B’,0,0,’C’,’D’,0,0

DATDW‘BA’,0,’DC’,0

DATDB‘BA’,’DC’

4.9.试按下列要求在数据段中依次书写各数据定义语句:

(1)以DA1为首字节的连接存储单元中存放20H个重复的数据序列:

2,3,10个4,一个7。

(2)DA2为字符串变量,用字变量(DW)设置一字符串;

‘STUDENTS’(按此顺序存放在各单元中)

(3)用等值语句给符号COUNT赋值以DA1为首址的数据区共占有的字节数,此等值语句必须放在最后一语句。

(1)DAT1DB20HDUP(2,3,10DUP(4),7)

(2)DAT2DW‘TS’,‘DU’,’NE’,’ST’

(3)COUNTEQUDATA2-DATA1

4.10.下面程序段是实现从键盘输入十个一位10进数后累加。

最后累加和以非压缩BCD码形式存放在AH(高位)和AL(低位)中。

试把程序段中所空缺的指令填上。

XORBX,BX

LOP:

MOVAH,01H;

键盘字符输入

INT21H

MOVAH,BH

ADDAL,BL

MOVBX,AX

MOVCX,10

AAA

4.11.下面程序段的功能是把DA1数据区的数0~9转换为对应的ASCII码。

试完善本程序段。

DA1DBOOH,O1H,02H,03H,04H,05H,06H,07H,08H,09H

ASCIDB10DUP(?

CUNT=ASCI-DA1

LEASI,DA1

LEADI,ADCI

LOP1:

MOYAL,[SI]

MOV[DI],AL

INCSI

INCDI

LOOPLOP1

MOVCX,COUT

ADDAL,30H

4.12.BUFF‘ABD$QC%$A…XYZ’

CONTEQU$-BUFF

CLD

LEADI,BUFF

MOVCX,CONT

MOVAL,‘$’

XORDX,DX

REPNZSCA,SB

CMPCX,0

JZK1

INCDX

JMPNEXT

K1:

上述程序段运行后,DX中的值表示的意义是什么?

DX中为$个数

4.13.设A,B是长度为10的字节数组,用串操作指令编写程序实现AB两数组内容的相互交换,试完善本程序。

DATASEGMENT

ADB1,2,3,4,5,6,7,8,9,0AH

DRGOO10H

BDB0AH,9,8,7,6,5,4,3,2,1

DATAENDS

LEASI,A

LEADO,B

MOVCX,10

LODSB

XCHGAL,[DI]

DECDI

STOSB

LOOPLOP

XCHGSI,DI

4.14.现有一子程序:

SUB1PROC

TESTAL,80H

JEPLUS

TESTBL,80H

JNEEXITO

JMPXCHANGE

PLUS:

TESTBL,80H

JEEITO

XCHANGE:

XCHGAL,BL

EWITO:

RET

SUB1ENDP

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

(2)如调用子程序前AL=9AH,BL=77H,那么返回主程序时,AL=?

BL=?

(1)测试AL,BL两数的符号,如为同号直接返回,如为异号,则AL与BL交换

(2)AL=77H,BL=9AH

4.15.编写一程序段,将AL中的第7和0位,第6和1位,第5和2位,第4和3位互换。

MOVCX,8

MOVAH,0

K1:

SHRAL,1

RCLAH,1

DECCX

JNZK1

MOVAL,AH

4.16.试编写一程序段,在CHAR为首址的26个字节单元中依次存放字母‘A’~‘Z’

MOVAL,‘A’

MOVDI,OFFSETCHAR

MOVCX,26

LOP:

MOV[DI],AL

INCAL

INCDI

LOOPLOP

4.17.设在数据段中有X,Y两变量(字节单元),试编写程序段计算(只写有关程序功能的指令):

X当X≥0时

Y=

|X|当X<0时

MOVAL,X

CMPAL,0

JGEBIGR

NEGAL

BIGR:

MOVY,AL

4.18.编程序段计算SUM==al+a2+…+a20,已知a1~a20依次存放在以BUF为首址的数据区,每个数据占两个字节,和数SUM也为两个字节。

(要求用循环结构编写,循环控制采用计数控制)。

此题考生勿需书写源程序格式,只需把试题要求的有关指令序列书写出来。

MOVAX,0

MOVBX,OFFSETBUF

MOVCX,20

ADDAX,[BX]

INCBX

MOVSUM,AX

4.19.编写一个完整的源程序,将BUF字节单元存放的两位BCD码,转换成2个字节的ASCII码,并分别存放在ASC和ASC+1字节单元中。

例如:

(BUF字节单元)=58H,那么(ASC字节单元)=35H,(ASC+1字节单元)=38H。

BUFDB58H

ASCDB2DUP(?

STACK1SEGMENTPARASTACK

DW20HDUP(0)

STACK1ENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVAL,BUF

ANDAL,0F0H

MOVCL,4

SHRAL,CL

ORAL,30H

MOVASC,AL

ANDAL,0FH

MOVASC+1,AL

MOVAL,4CH

CODEENDS

ENDSTART

4.20.在A1单元开始定义了一长度为N的字符串,找出其中所有的小写字母并存放到以A2开始的存储区中。

统计出小写字母的个数,存放到SL单元中。

请编一完整的源程序。

数据段如下:

A1DB‘…’

NEQU$-A1

A2DBNDUP(?

SLDB?

A1DB‘……’

NEQU$-A1

A2DBNDUP(?

SLDB?

STACKSEGMENTPARASTACK

DW10HDUP(0)

STARTENDS

DATA,SS:

STACK

LEASI,A1

LEADI,A2

MOVCX,N

XORBL,BL

AGAIN:

MOVAL,[SI]

CMPAL,‘a’

JBEXIT

CMPAL,‘z’

JAEXIT

MOV[DI],AL

INCBL

EXIT:

INCSI

LOOPAGAIN

MOVSL,BL

MOVAH,4CH

INT21H

ENDSTART

4.21.设在DAT单元存放一个-9~+9的字节数据,在SQRTAB数据区中存放0~9的平方值,请用直接查表法编写一个子程序,在SQRTAB中查找出DAT单元中数据对应的平方值送SQR单元。

并写出主程序的调用方式。

DATDBXXH

SQRTABDB0,1,4,9,…7781

SQRDB?

DATDBXXH

SQRTABDB0,1,4,9,……,81

SQRDB?

DB20HDUP(0)

STACK1

…………

CALLSUBROT

……

SUBROTPROC

PUSHAX

PUSHBX

LEABX,SQRTAB

MOVAL,DAT

TESTAL,80H

JNSNEXT

NEGAL

NEXT:

XLATSQRTAB

MOVSQR,AL

POPBX

POPAX

RET

SUBROTENDS

CODEENDS

4.22.编写能完成下列要求的程序:

测试字节数据STATUS,若其中位1、3、5有一位是“1”,程序就转至ROUT1;

若有二位是“1”,就转向ROUT2;

若三位都是“1”,就转向ROUT3;

若这三位没有一位是“1”,就转向ROUT4。

MOVAL,STATUS

ANDAL,00101010B

JZROUT4

CMPAL,00101010B

JZROUT3

TESTAL,00001010B

JZROUT1

TESTAL,00101000B

TESTAL,00100010B

JMPROUT2

HLT

4.23.STRING字符串的最大长度为80个字符,字符串的结束用字符$表示。

编写程序在该字符串中查找是否有空格符(ASCII码为20H),若有就将第一个空格在字符串中的位置(00~4FH)存入POST单元;

若无空格则将-1存入POST。

STRINGDB‘……$

LENT’EQU$-STRING

POSTDB?

SEARCH:

MOVBX,OFFSETSTRING

MOVDL,20H

MOVPOST,0FFH

LOP:

MOVAL,[BX]

CMPAL,‘$’

JZSTP

CMPAL,DL

JNZLOP

DECBX

MOVPOST,BX

STP:

第5章

5.1.用下列芯片构成存储系统,各需要多少个RAM芯片?

需要多少位地址作为片外地址译码?

设系统为20位地址线,采用全译码方式。

(1)512×

4位RAM构成16KB的存储系统;

(2)1024×

1位RAM构成128KB的存储系统;

(3)2K×

4位RAM构成64KB的存储系统;

(4)64K×

1位RAM构成256KB的存储系统;

1)需要16KB/512×

4=64片

片外地址译码需11位地址线。

2)需要128KB/1K×

1=1024片

片外地址译码需10位地址线。

3)需要64KB/2K×

片外地址译码需9位地址线。

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

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2