ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:32.73KB ,
资源ID:27040386      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27040386.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理习题解答.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理习题解答.docx

1、微机原理习题解答 第一章 微型计算机的基础知识1-1 将下列十进制数转换为二进制数、十六进制数。 (1)110 (2)1 039 (3)0.75 (4)0.156 25 1-2 将下列十进制数转换为BCD码。 (1)129 (2)5 678 (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

2、码。 (1)1011011.101 (2)1010110.001 1-6 将下列BCD码转换为二进制数。 (1)(0010 0111 0011)BCD (2)(1001 0111.0010 0101)BCD 1-7 完成下列二进制数的运算。 (1)1001.1111.11 (2)1101.01-0110.11 (3)1000.011-1001.101 (4)11111101 1-8 完成下列十六进制数的运算。 (1)6AH0A6H (2)0AB1FH0EFCH (3)12ADH-1DEH (4)117H-0ABH 1-9 已知X=01H,Y=0FFH,在下面的情况下比较两数的大小。 (1)无符

3、号数 (2)符号数 (均为补码) 1-10 计算下列各表达式。 (1)101A01101001B0D5H57Q (2)127.812510111101.101375.63Q1FC.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 已知补码如下,分别求出真值、原码、反码

4、。 (1)X补=81H (2)X补=800H (3)X补=79H (4)X补=FFFEH 1-16 写出下列补码的真值。 (1)X补=1000 0000 0000 0000 (2)X补=1111 1111 1111 1111 (3)X补=0111 1111 1111 1111 (4)X补=0101 0101 0101 0101 1-17 8位二进制补码、原码、反码的范围各是什么?16位的呢? 1-18 用8位补码完成XY运算,判断结果是否溢出,并说明原因。 (1) X=80;Y=-65 (2)X=-120;Y=65 (3)X=-87;Y=-45 (4) X=-10;Y=-115 1-19 用压

5、缩BCD码计算下列各式,并进行调整。 (1)2711 (2)3729 (3)6257 (4)9872 1-20 将下列十进制数表示成二进制浮点规格化数,要求:不包括符号位,尾数取6位,阶码取4位。若尾数、阶码都用原码或都用补码表示,分别写出其浮点数形式。 (1)17.5 (2)-75.5 第二章 微处理器结构 2-1 什么是微机的系统总线?微机的总线结构为它带来了哪些好处?一般将系统总线分为哪三种类型? 2-2 简述微处理器、微型计算机的发展经历了几代?各代的典型产品是什么?2-3 8086/8088微处理器由哪两大部分组成?各部分的功能是什么?这种结构与8位CPU相比,为什么能提高其性能?

6、2-4 8086/8088 CPU内部有哪些寄存器?其主要作用是什么? 2-5 以8086/8088为CPU组成微机系统时,为什么要用地址锁存器和数据放大器?它们的主要功能是什么? 2-6 8086/8088 CPU中有哪些标志位?试述它们的含义及作用。 2-7 两个十六进制数7825H和5A1FH分别相加和相减后,求运算结果及各标志位的值。 2-8 简述8086/8088 CPU最大模式、最小模式,其关键区别是什么? 2-9 8086在最小模式下,访问存储器,哪些信号有效?访问I/O端口,哪些信号有效? 2-10 解释时钟周期、总线周期及指令周期。一个基本的总线周期包括几个时钟周期? 2-1

7、1 试画出在最小模式下,8086 CPU读、写总线周期时序图。 2-12 8086与8088相比有哪些不同?8086引脚 BHE 的作用是什么?其存储器组织为什么要由偶存储体和奇存储体组成? 2-13 在最小模式下,8086的哪些引脚是分时复用的?哪些信号需要由系统进行锁存? 2-14 8086/8088内指令队列的作用是什么?其各自长度为多少?8086 CPU复位后,有哪些特征?8086系统如何找启动程序? 2-15 8086/8088 CPU为什么对存储器采用分段技术?段的起始地址有何规定?2-16 若有3种微处理器的地址引脚数分别为8条、16条、24条,试问这3种微处理器分别能寻址多少字

8、节的存储单元? 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字单元的内容

9、是什么? 题2-21图2-22 如果从存储器的10000H地址开始分配段区,要求代码段占用4 K字节空间,数据段占用2 K字节空间、堆栈段占用512个字节空间。按代码段、数据段和堆栈段的顺序连续分段,试画出存储器分段地址分配示意图,指出CS、DS、SS各段寄存器内容是什么?2-23 解释什么是规则字、非规则字,8086 CPU对它们的存取各需要几个总线周期? 第三章 指令系统 3-1 指出下列指令的寻址方式。 (1)MOV BX,2000H (2)MOV BX,2000H (3)MOV BP,CX (4)MOV AL,BXSI100H (5)MOV DX,BXDI (6)MOV AX,CX (

10、7)POP AX (8)MUL BL (9)IN AL,80H (10)OUT DX,AX (11)JMP SI (12)DEC WORD PTR DI1200H 3-2 指出下列指令中存储器操作数实际地址的计算公式。 (1)ADD AL,DI (2)SHR BYTE PTR BPSI (3)MOV CL,10BX (4)SUB ES:BXSI10H,BL (5)OR AL,SI80H (6)PUSH AX (7)MOV AX,2020H (8)JMP DWORD PTR ES:SI 3-3 指出下列指令的错误。 (1)MOV AL,BX (2)MOV CS,AX (3)ADD AX,IP (

11、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)MOV AX,1200H AX=( ) (

12、2)MOV AX,1200H AX=( ) (3)ADD SI,CX (10050H)=( ),(10051H)=( ),ZF=( ), SF=( ),CF=( ),OF=( ) (4)OR BYTE PTR BXSI,54H (12AD0H)=( ),CF=( ),OF=( ) (5)MOV BX150H,CH (12BD0H)=( ),CH=( ) (6)SUB BH,1200HBX SI BH=( ),ZF=( ),SF=( ),CF=( ),OF=( ) (7)ROL WORD PTR BX,1 12A80H=( ),12A81H=( ),CF=( ) 3-5 写出以BUF为首地址字数

13、组中的第五个字送到寄存器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

14、=? 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 指令SUB AL,9与CMP AL,9这两条指令的区别是什么?若AL=8,分别执行上述两条指令后,SF=?CF=?ZF=?OF=? 3-12

15、 分别编写出实现下列各算式的程序段,其中A、B、C、D均为存放16位无符号数的单元符号地址。若A、B、C、D均存放16位符号数的话,程序段如何改写? (1)WDA*C (2)W(DB)*A)/C (3)WD/AB(余数省略) 3-13 检查CX中的D10位是否为“0”,写出完成该操作的指令。 3-14 写出一条使地址1000H中的内容与CF标志位同时清0的指令。 3-15 8086/8088采用什么途径改变IP和CS内容,哪些指令可达到这个目的? 3-16 假设指令JMP SHORT NEXT存在代码段的2100H、2101H单元中,它的相对量为(1)38H (2)0D8H,请写出每种相对量的

16、转移地址是什么?写出计算过程。 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的内容,则转L

17、2。 (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,

18、 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)在

19、以STRING为首地址的存储单元中存放字符串THIS IS A EXAMPE。 (6)用符号TOTAL代替数字780。 4-2 请画出下列数据定义语句的内存数据排列图。 DATA1 DB -10,29H,29,7,? DATA2 DW 2 DUP(12,12),0CDH DATA3 DD 123456H 4-3 假设数据定义语句如下,请画出内存数据排列图。 X1 DB ?,76 X2 DW 20 DUP(1,2),80H,? X3 DD 5 COUNT EQU $-X2 请问:COUNT的值是多少?它表示什么意义? 4-4 请画 出下列数据定义语句的内存数据排列图。 ORG 0100H SA1

20、 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 10 DUP(?) BUF4 DB 3,4,8,9,10 (1)写出将BUF1的偏移地址送BX的指令。 (2)将BUF2的第4个字节数据送CL的指令。 (3)将0C6H送入BUF3的第8个字节单元中的指令。 (4)用伪指令写出BUF2

21、和BUF3总字节数。 (5)用一组程序段,写出BUF2的第2个数据671和BUF4的第4个数据9相加,结果送入BUF3中。 4-7 根据下面数据定义语句,写出各条指令执行后的结果。 FLDB DW 0A47CH TABLE DB 52H,67H,0C0H,210 TAE EQU WORD PTR TABLE) ARRAY DB 1234 CNT EQU $-ARRAY (1)MOV AX,FLDB AL=( ) (2)MOV BX,TAE BH=( ) (3)MOV CH,TABLE2 CH=( ) (4)MOV DL,ARRAY DL=( ) (5)MOV DH,CNT DH=( ) 4-8

22、 数据定义语句如下,指令执行后 DA1 EQU BYTE PTR DA2 DA2 DW 0ABCDH SHR DA1,1 SAR DA2,1 上述指令序列执行后,DA2=( ),CF=( )。 4-9 指令AND AX,76H AND 0FH中,请问两个AND操作在什么时间进行?有何区别?如何用立即寻址直接写出该指令? 4-10 将存放在字节变量BCD1中的两个十进制数的ASCII码合并为一字节压缩的BCD码,存入字节变量BCD2中,试编写程序。 4-11 不使用乘法指令,将寄存器AX的内容扩大7倍,试编写程序。 4-12 执行下列指令后,AX寄存器中的内容是什么? TABLE DW 10,2

23、0,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 A20 Y=A 20A60 Y=80 A60 4-15 试编写程序,要求比较数组BUFER中的3

24、个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 5 DUP(?) MOV CX,5 MOV BX,5 MOV SI,0 LOP: MOV AL,PAS1BXSI MOV PAS2SI,AL

25、INC SI LOOP LOP HLT 该程序段执行后,PAS2数据区的数依次为( )。 4-17 请编写实现下述功能的程序:在以DATA为首地址的数据区中存有100个字符号数,要求找出其中的最大数送MAX,最小的数送MIN。 4-18 已知有COUNT个字节数存放在以NUMBER为首地址的数据区中。编一个程序将其中的负数去除后将剩下的正数重新存放在以PLUS开始的数据区中。 4-19 数组GRADE中存有200个学生某科考试成绩,要求编写程序。 (1)统计各分数段的人数,即要求统计90100,8089,7079,6069以及60以下的各有多少人。 (2)求出该门课程考试成绩的平均成绩是多少(

26、小数省略),并放在LTEV单元中。 4-20 编写如下程序:利用DOS功能调用,完成将键盘输入的小写字母转换为大写字母并输出显示,直到输入“*”字符为止,停止输出。 4-21 以PKK为首地址的数据区中,有一个由100个符号组成的字符串,其中至少有2个以上的字符“#”,请分别编写实现下列功能的程序: (1)统计字符串中字符“#”出现的次数,并送入CUT单元中。 (2)查找字符串中最后出现符号“#”的位置与PKK的距离。 4-22 在DATA单元开始的区中存放一英文句子(大、小写字母构成),编一个程序,将句子中的各个英文字母按字典顺序排列。 4-23 分析下列程序,回答:(1)指出程序完成的功能

27、。(2)画出主程序调用子程序时,堆栈的变化示意图。(3)该子程序的设计有什么缺点,如何修改? SOURCE DBKG1*2 DST DB 100 DUP(?) LEA AX,SOURCE PUSH AX LEA AX,DST PUSH AX MOV AX,100 PUSH AX CALL FAR PTR REMOV (断点CS:IP) REMOV PROC FAR MOV BP,SP MOV CX,BP4 MOV DI,BP6 MOV SI,BP8 CLD REP MOVSB RET REMOV ENDP 4-24 编一个子程序,利用XLAT指令(查表法)把十六进制数转换成ASCII码。假设ASCII码存放在以DATA1为首地址的数据区中,对应的十六进制数放在以DATA2为首地址的数据区中,转换结果送到以DATA3为首地址的数据区中。 4-25 利用DOS系统功能调用从键盘上输入10个1位无符号数,求出其中最大和最小数并在显示器上输出显示。 第五章 中断系统及中断控制器 5-1 I/O接口的主要功能是什么?在8086/8088系统中,I/O端口地址采用哪种编址方式? 5-2 一般的I/O接口电路安排有哪三类寄存器?它们的各自作用是什么? 5-3 简述CPU(主机)与外设进行数据交换的几种常用方式。说明各自应用的场合。5-4

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

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