微机原理习题解答.docx

上传人:b****3 文档编号:27040386 上传时间:2023-06-26 格式:DOCX 页数:30 大小:32.73KB
下载 相关 举报
微机原理习题解答.docx_第1页
第1页 / 共30页
微机原理习题解答.docx_第2页
第2页 / 共30页
微机原理习题解答.docx_第3页
第3页 / 共30页
微机原理习题解答.docx_第4页
第4页 / 共30页
微机原理习题解答.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

微机原理习题解答.docx

《微机原理习题解答.docx》由会员分享,可在线阅读,更多相关《微机原理习题解答.docx(30页珍藏版)》请在冰豆网上搜索。

微机原理习题解答.docx

微机原理习题解答

 

第一章微型计算机的基础知识

1-1将下列十进制数转换为二进制数、十六进制数。

(1)110

(2)1039(3)0.75(4)0.15625

1-2将下列十进制数转换为BCD码。

(1)129

(2)5678(3)0.984(4)93.745

1-3将下列二进制数转换为十进制数、十六进制数。

(1)10101010

(2)10000000(3)11000011.01(4)01111110

1-4将下列十六进制数转换为二进制数、十进制数。

(1)8E6H

(2)0A42H(3)7E.C5H(4)0F19.1DH

1-5将下列二进制数转换为BCD码。

(1)1011011.101

(2)1010110.001

1-6将下列BCD码转换为二进制数。

(1)(001001110011)BCD

(2)(10010111.00100101)BCD

1-7完成下列二进制数的运算。

(1)1001.11+11.11

(2)1101.01-0110.11(3)1000.011-1001.101(4)1111+1101

1-8完成下列十六进制数的运算。

(1)6AH+0A6H

(2)0AB1FH+0EFCH(3)12ADH-1DEH(4)117H-0ABH

1-9已知X=01H,Y=0FFH,在下面的情况下比较两数的大小。

(1)无符号数

(2)符号数(均为补码)

1-10计算下列各表达式。

(1)101+‘A’+01101001B+0D5H+57Q

(2)127.8125+10111101.101+375.63Q+1FC.8AH

1-11写出下列字符串的ASCII码。

(1)HELLO

(2)A8=

1-12若加上偶校验,下面字符的ASCII码是什么?

加上奇校验呢?

(1)E

(2)6

1-13用8位和16位二进制数,分别求下列十进制数的原码、反码、补码。

(1)-38

(2)125(3)-128(4)87

1-14用8位和16位二进制数,分别写出数字0的原码、反码、补码。

1-15已知补码如下,分别求出真值、原码、反码。

(1)[X]补=81H

(2)[X]补=800H(3)[X]补=79H(4)[X]补=FFFEH

1-16写出下列补码的真值。

(1)[X]补=1000000000000000

(2)[X]补=1111111111111111

(3)[X]补=0111111111111111(4)[X]补=0101010101010101

1-178位二进制补码、原码、反码的范围各是什么?

16位的呢?

1-18用8位补码完成X+Y运算,判断结果是否溢出,并说明原因。

(1)X=80;Y=-65

(2)X=-120;Y=65(3)X=-87;Y=-45

(4)X=-10;Y=-115

1-19用压缩BCD码计算下列各式,并进行调整。

(1)27+11

(2)37+29(3)62+57(4)98+72

1-20将下列十进制数表示成二进制浮点规格化数,要求:

不包括符号位,尾数取6位,阶码取4位。

若尾数、阶码都用原码或都用补码表示,分别写出其浮点数形式。

(1)17.5

(2)-75.5

 

第二章微处理器结构

2-1什么是微机的系统总线?

微机的总线结构为它带来了哪些好处?

一般将系统总线分为哪三种类

型?

2-2简述微处理器、微型计算机的发展经历了几代?

各代的典型产品是什么?

2-38086/8088微处理器由哪两大部分组成?

各部分的功能是什么?

这种结构与8位CPU相比,为什么

能提高其性能?

2-48086/8088CPU内部有哪些寄存器?

其主要作用是什么?

2-5以8086/8088为CPU组成微机系统时,为什么要用地址锁存器和数据放大器?

它们的主要功能是

什么?

2-68086/8088CPU中有哪些标志位?

试述它们的含义及作用。

2-7两个十六进制数7825H和5A1FH分别相加和相减后,求运算结果及各标志位的值。

2-8简述8086/8088CPU最大模式、最小模式,其关键区别是什么?

2-98086在最小模式下,访问存储器,哪些信号有效?

访问I/O端口,哪些信号有效?

2-10解释时钟周期、总线周期及指令周期。

一个基本的总线周期包括几个时钟周期?

2-11试画出在最小模式下,8086CPU读、写总线周期时序图。

2-128086与8088相比有哪些不同?

8086引脚BHE的作用是什么?

其存储器组织为什么要由偶存

储体和奇存储体组成?

2-13在最小模式下,8086的哪些引脚是分时复用的?

哪些信号需要由系统进行锁存?

2-148086/8088内指令队列的作用是什么?

其各自长度为多少?

8086CPU复位后,有哪些特

征?

8086系统如何找启动程序?

2-158086/8088CPU为什么对存储器采用分段技术?

段的起始地址有何规定?

2-16若有3种微处理器的地址引脚数分别为8条、16条、24条,试问这3种微处理器分别能寻址多少

字节的存储单元?

2-17解释逻辑地址、物理地址、段地址及偏移地址,物理地址是如何求得的?

2-18段地址和偏移地址为1000:

117AH的存储单元的物理地址是什么?

而1109:

00EAH的存储单元的

物理地址又是什么?

这说明什么问题?

2-19若某条指令执行前,CS=0A7B0H,IP=2B50H,求该条指令存放第一个字节单元的物理地

址。

2-20有一100个字的存储区域,其起始地址为6250:

2300H。

写出这个存储区域首末单元

的物理地址。

2-21在存储器中存放的数据如题2-21图所示。

试读出123D4H和123D6H字节单元的内容是什么?

读出

123D4H和123D6H字单元的内容是什么?

题2-21图

2-22如果从存储器的10000H地址开始分配段区,要求代码段占用4K字节空间,数据段占

用2K字节空间、堆栈段占用512个字节空间。

按代码段、数据段和堆栈段的顺序连续分段,

试画出存储器分段地址分配示意图,指出CS、DS、SS各段寄存器内容是什么?

2-23解释什么是规则字、非规则字,8086CPU对它们的存取各需要几个总线周期?

 

 

第三章指令系统

3-1指出下列指令的寻址方式。

(1)MOV BX,2000H         

(2)MOV  BX,[2000H]

(3)MOV[BP],CX           (4)MOV AL,[BX+SI+100H]

(5)MOV DX,[BX+DI]      (6)MOV AX,CX

(7)POP  AX(8)MUL BL

(9)IN  AL,80H (10)OUT DX,AX

(11)JMP SI (12)DEC WORDPTR[DI+1200H]

3-2指出下列指令中存储器操作数实际地址的计算公式。

(1)ADD AL,[DI] 

(2)SHR BYTEPTR[BP+SI]

(3)MOV CL,10[BX] (4)SUB ES:

[BX+SI+10H],BL

(5)OR  AL,[SI-80H] (6)PUSH AX

(7)MOV AX,[2020H] (8)JMP DWORDPTRES:

[SI]

3-3指出下列指令的错误。

(1)MOV AL,BX 

(2)MOV   CS,AX

(3)ADD AX,IP   (4)MOV   50H,AL

(5)MUL 12H      (6)MOV   [1000H],[SI]

(7)CMP [DI],0  (8)OUT   80H,CL

(9)MOV ES,1200H (10)ROL   AH,3

(11)ADD  AX,[CX]  (12)PUSH   1810H

3-4假设DS=1000H,BX=2A80H,CX=3142H,SI=50H,[10050H]=3BH,[10051H]=86H,

[11200H]=7AH,[11201H]=64H,[12A80H]=95H,[12A81H]=0C4H,[12AD0H]=0A3H,

[13CD0H]=61H,在以下各题括号中分别填入指令执行后的结果。

(1)MOVAX,1200H

 AX=(   )

(2)MOVAX,[1200H]

 AX=(   )

(3)ADD[SI],CX

 (10050H)=(   ),(10051H)=(   ),ZF=(   ),

 SF=(   ),CF=(   ),OF=(   )

(4)ORBYTEPTR[BX+SI],54H

  (12AD0H)=(   ),CF=(   ),OF=(   )

(5)MOV[BX+150H],CH

 (12BD0H)=(   ),CH=(   )

(6)SUBBH,1200H[BX][SI]

 BH=(  ),ZF=(  ),SF=(  ),CF=(  ),OF=(  )

(7)ROLWORDPTR[BX],1

 [12A80H]=(   ),[12A81H]=(   ),CF=(   )

3-5写出以BUF为首地址字数组中的第五个字送到寄存器CX的指令序列,要求分别使用以下几种寻

址方式:

(1)以BX的寄存器间接寻址。

(2)以BX的相对寄存器寻址。

(3)以BX、SI的基址变址寻址。

3-6假设SP=1010H,AX=1357H,BX=2468H,请问:

下列程序段执行后,SP=?

AX=?

BX=?

 PUSH AX

 PUSH BX

 POP AX

3-7写出使AX=0的单条指令,尽量多写几条。

3-8分析下面程序段,指出每条指令执行后寄存器的内容。

 MOV  AX,0ABCH      AX=?

 DEC    AX AX=?

 AND    AX,0FFFH AX=?

 MOV    CL,4 CL=?

 SAL    AX,CL AX=?

CL=?

 MOV    CL,AL CL=?

 ADD    CL,78H CL=?

 PUSH   AX AX=?

 POP    AX AX=?

3-9执行下面程序段后,AL=?

BL=?

CF=?

 MOV  AL,BL

 NOT AL

 XOR AL,BL

 AND BL,AL

3-10设AX=0119H,执行下面程序段后,AX=?

 MOV  CH,AH

 ADD AL,AH

 DAA

 XCHG AL,CH

 ADC AL,34H

 DAA

 MOV AH,AL

 MOV AL,CH

 HLT

3-11指令SUBAL,9与CMP AL,9这两条指令的区别是什么?

若AL=8,分别执行上述两条指令后,

SF=?

CF=?

ZF=?

OF=?

3-12分别编写出实现下列各算式的程序段,其中A、B、C、D均为存放16位无符号数的单元符号地

址。

若A、B、C、D均存放16位符号数的话,程序段如何改写?

(1)W←D-A*C

(2)W←((D+B)*A)/C

(3)W←D/A+B(余数省略)

3-13检查CX中的D10位是否为“0”,写出完成该操作的指令。

3-14写出一条使地址1000H中的内容与CF标志位同时清0的指令。

3-158086/8088采用什么途径改变IP和CS内容,哪些指令可达到这个目的?

3-16假设指令JMPSHORTNEXT存在代码段的2100H、2101H单元中,它的相对量为

(1)38H

(2)

0D8H,请写出每种相对量的转移地址是什么?

写出计算过程。

3-17分析下列程序段,如果AX和BX内容分别给出如下几种情况,问程序执行后分别转向何处?

(1)AX=1290H,BX=812FH    

(2)AX=45D2H,BX=6563H

(3)AX=95C5H,BX=0B469H    (4)AX=0D056H,BX=9EF8H

 ADD  AX,BX

 JNO L1

 JNC L2

 SUB AX,BX

 JNC L3

 JNO L4

 JMP L5

3-18假定AX和BX内容为符号数,CX和DX内容为无符号数,请用比较和条件转移指令实现以下条件

转移。

(1)若DX的内容超过CX的内容,则转L1。

(2)若BX的内容大于AX的内容,则转L2。

(3)若CX的内容等于零,则转L3。

(4)BX的内容和AX的内容比较,若溢出则转L4。

(5)若BX的内容小于等于AX的内容,则转L5。

(6)若DX的内容低于等于CX的内容,则转L6。

3-19若下列条件转移指令中的条件CC可以为B、BE、A、AE、L、LE、G、GE中的任一个,如果AX和

BX的值分别为下面

(1)~(6)的情况,问在每种情况下,八个条件CC中哪几个可以转移到AGAIN去?

 CMP  AX,BX

 JCC  AGAIN

(1)AX=1F54H,   BX=1F54H     

(2)AX=8765H,   BX=1890H

(3)AX=0FE60H, BX=0981H      (4)AX=0973H,    BX=0DC38H

(5)AX=8CABH,    BX=0F43CH   (6)AX=1234H,  BX=1087H

 

 

第四章汇编语言程序设计

4-1请写出完成下列操作的伪指令语句。

(1)将78,-40,0D6H,49H存放在定义为字节变量STAD的存储单元中。

(2)将字数据1245H,64H,1245,0C7H存放在定义为字节变量ARRAY的存储单元中。

(3)将字节数据12H,0FCH,0E4H,65H存放在定义为字变量ALPHA的存储单元中,并且不改变数据按字节存储的次序。

(4)在以BETA为首地址的存储单元中连续存放字节数据:

4个8,6个‘S’,20个空单元,10个(1,3)。

(5)在以STRING为首地址的存储单元中存放字符串THIS IS A EXAMPE。

(6)用符号TOTAL代替数字780。

4-2请画出下列数据定义语句的内存数据排列图。

    DATA1  DB  -10,29H,29,‘7’,?

 DATA2 DW 2DUP(‘12’,12),0CDH

 DATA3 DD 123456H

4-3假设数据定义语句如下,请画出内存数据排列图。

 X1 DB  ?

,76

 X2 DW  20DUP(1,2),80H,?

 X3 DD  5

 COUNT   EQU $-X2

请问:

COUNT的值是多少?

它表示什么意义?

4-4  请画 出下列数据定义语句的内存数据排列图。

       ORG  0100H

 SA1 DB 30,‘30’

 SA2 DW SA1

 SA3 EQU  $-SA1

 SA4 DW SA3

4-5数据定义语句如下:

 ORG 30H

 DA1 DB 0,‘0’,30H

 DW DA1

请回答:

字数据为3000H存储单元的偏移地址是什么?

4-6  假设数 据定 义语句如下:

 BUF1 DB 50DUP(0)

 BUF2 DW 4567H,671,0D8H

 BUF3 DB 10DUP(?

 BUF4 DB 3,4,8,9,10

(1)写出将BUF1的偏移地址送BX的指令。

(2)将BUF2的第4个字节数据送CL的指令。

(3)将0C6H送入BUF3的第8个字节单元中的指令。

(4)用伪指令写出BUF2和BUF3总字节数。

(5)用一组程序段,写出BUF2的第2个数据671和BUF4的第4个数据9相加,结果送入BUF3中。

4-7根据下面数据定义语句,写出各条指令执行后的结果。

  FLDB  DW  0A47CH

  TABLE DB 52H,67H,0C0H,210

  TAE EQU WORDPTRTABLE)

  ARRAY DB ‘1234’

  CNT EQU $-ARRAY

(1)MOV  AX,FLDB   AL=(  )

(2)MOV BX,TAE BH=(  )

(3)MOV CH,TABLE+2 CH=(  )

(4)MOV DL,ARRAY DL=(  )

(5)MOV DH,CNT DH=(  )

4-8数据定义语句如下,指令执行后

  DA1  EQU  BYTEPTRDA2

  DA2 DW 0ABCDH 

 SHR DA1,1

 SAR DA2,1

上述指令序列执行后,[DA2]=(  ),CF=( )。

4-9指令ANDAX,76HAND0FH中,请问两个AND操作在什么时间进行?

有何区别?

如何用立即寻址直接写出该指令?

4-10将存放在字节变量BCD1中的两个十进制数的ASCII码合并为一字节压缩的BCD码,

存入字节变量BCD2中,试编写程序。

4-11不使用乘法指令,将寄存器AX的内容扩大7倍,试编写程序。

4-12执行下列指令后,AX寄存器中的内容是什么?

    TABLE  DW  10,20,30,40,50

 NEW DW 3

 

 MOV SI,OFFSET TABLE

 ADD SI,NEW

 MOV AX,[SI]

 HLT

4-13有一个程序段如下所示:

 OR AL,AL

 JZ L1

 SAR AL,1

 JZ L2

 RCL AL,1

 NOT AL

 JZ L3

请回答:

(1)当AL=〖CD#4〗,执行该程序转向L1;

(2)当AL=〖CD#4〗,执行该程序转向L2;(3)当AL=〖CD#4〗,执行该程序转向L3。

4-14在BUFF单元中有一个BCD码A,试编写程序计算Y,结果送DES单元中。

Y=2A  A<20

Y=A   20≤A<60

Y=80   A≥60

4-15试编写程序,要求比较数组BUFER中的3个16位符号数。

根据比较结果,置FLAG标志,要求画出程序流程图。

(1)如果3个数都不相等,置FLAG为0。

(2)如果3个数有两个相等,置FLAG为1。

(3)如果3个数全相等,置FLAG为2。

4-16有程序段如下所示,请回答。

(1)     MOV  AX,100

       MOV CX,5

       LOP:

 SUB AX,CX

       LOOP LOP

       HLT

该程序段执行后,AX=?

CX=?

(2) PAS1 DB 0,1,2,3,4,5,6,7,8,9

   PAS2 DB 5DUP(?

 

    MOV CX,5

    MOV BX,5

    MOV SI,0

 LOP:

 MOV AL,PAS1[BX+SI]

 MOV PAS2[SI],AL

 INC SI

 LOOP LOP

 HLT

该程序段执行后,PAS2数据区的数依次为(        )。

4-17请编写实现下述功能的程序:

在以DATA为首地址的数据区中存有100个字符号数

,要求找出其中的最大数送MAX,最小的数送MIN。

4-18已知有COUNT个字节数存放在以NUMBER为首地址的数据区中。

编一个程序将其中的负数去除后将剩下的正数重新存放在以PLUS开始的数据区中。

4-19数组GRADE中存有200个学生某科考试成绩,要求编写程序。

(1)统计各分数段的人数,即要求统计90~100,80~89,70~79,60~69以及60以下的各有多少人。

(2)求出该门课程考试成绩的平均成绩是多少(小数省略),并放在LTEV单元中。

4-20编写如下程序:

利用DOS功能调用,完成将键盘输入的小写字母转换为大写字母并输出显示,直到输入“*”字符为止,停止输出。

4-21以PKK为首地址的数据区中,有一个由100个符号组成的字符串,其中至少有2个

以上的字符“#”,请分别编写实现下列功能的程序:

(1)统计字符串中字符“#”出现的次数,并送入CUT单元中。

(2)查找字符串中最后出现符号“#”的位置与PKK的距离。

4-22在DATA单元开始的区中存放一英文句子(大、小写字母构成),编一个程序,将

句子中的各个英文字母按字典顺序排列。

4-23分析下列程序,回答:

(1)指出程序完成的功能。

(2)画出主程序调用子程序

时,堆栈的变化示意图。

(3)该子程序的设计有什么缺点,如何修改?

    SOURCE  DB〖KG1*2〗 …

 DST DB 100DUP(?

 

 LEA AX,SOURCE

 PUSH AX

 LEA AX,DST

 PUSH AX

 MOV AX,100

 PUSH AX

 CALL FARPTRREMOV

(断点CS:

IP) …

 

 REMOV PROC FAR

 MOV BP,SP

 MOV CX,[BP+4]

 MOV DI,[BP+6]

 MOV SI,[BP+8]

 CLD

 REP MOVSB

 RET

 REMOV ENDP

 

4-24编一个子程序,利用XLAT指令(查表法)把十六进制数转换成ASCII码。

假设ASCII码存放在以DATA1为首地址的数据区中,对应的十六进制数放在以DATA2为首地址的数据区中,转换结果送到以DATA3为首地址的数据区中。

4-25利用DOS系统功能调用从键盘上输入10个1位无符号数,求出其中最大和最小数并在显示器上输出显示。

 

 

第五章中断系统及中断控制器

5-1I/O接口的主要功能是什么?

在8086/8088系统中,I/O端口地址采用哪种编址方式?

5-2一般的I/O接口电路安排有哪三类寄存器?

它们的各自作用是什么?

5-3简述CPU(主机)与外设进行数据交换的几种常用方式。

说明各自应用的场合。

5-4

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

当前位置:首页 > 工作范文 > 行政公文

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

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