ImageVerifierCode 换一换
格式:DOC , 页数:16 ,大小:1.14MB ,
资源ID:2339701      下载积分:8 金币
验证码下载
登录下载
邮箱/手机:
验证码: 获取验证码
温馨提示:
支付成功后,系统会自动生成账号(用户名为邮箱或者手机号,密码是验证码),方便下次登录下载和查询订单;
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

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

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  
声明  |  会员权益     获赠5币     写作写作

1、填表:    下载求助     留言反馈    退款申请
2、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
3、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
4、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
5、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
6、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
7、本文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。

注意事项

本文(兰州理工大学微机原理习题集作业答案1-5章.doc)为本站上传会员【精***】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4008-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

兰州理工大学微机原理习题集作业答案1-5章.doc

1、(完整版)兰州理工大学微机原理习题集作业答案1-5章 第 一 章 微型计算机概论1。1、答:微型计算机系统包括硬件系统和软件系统两大部分。硬件系统包括:微型计算机、外部设备、电源及其它辅助设备。软件系统包括:系统软件和应用软件。微型计算机也称为主机,主机包括:微处理器、存储器、输入/输出接口(Input/Output),微处理器通过系统总线和存储器、输入/输出接口进行连接。微处理器(Microprocessor Unit)简称为MPU(或者称为MP),它是一个中央控制器(Central Processing Unit),简称CPU。它是微型计算机的核心部件,它将运算器、控制器、寄存器通过内部总

2、线连接在一起,并集成在一个独立芯片上.1.2、答:单片机是将CPU、ROM、RAM以及I/O接口电路以及内部系统总线等全部集中在一块大规模集成电路芯片上,就构成了单片机。单板机是将微处理器芯片、存储器芯片、I/O接口芯片及少量的输入输出设备(键盘,数码显示器)安装在一块印制板上构成一台微型计算机。由多块印制板构成的微机称为多板机。1.3、完成下列转换(保留4位小数)(21。32)10=(10101.0101)2=(25.2436)8=(15.51EB)16 50。38D= 110010。0110 B=62.3024 Q= 32.6147 H 1.4、完成下列计算 已知X-63,Y59则X原BF

3、H(10111111B),X反C0H(110000000B),X补C1H(11000001B)Y原3BH(00111011B),Y反3BH(00111011B),Y补3BH(00111011B)XY补0FCH(11111100B), XY补86H(10000110B).X 补Y补0FCH(11111100B),X 补g补86H(10000110B).1。5、答:浮点数是指小数点在数值中的位置不是固定不变,实际位置将随阶码而浮动,用这种方法表示的数,称为浮点数.定点数是指小数点在数值中的位置固定不变.1。6、答:压缩BCD码是4位二进制表示一位十进制数而非压缩BCD码是8位二进制表示一位十进制数

4、。1。7、写出下列数值的压缩的BDC码、非压缩的BDC码、ASC码值。(改为15,29) 15=15H压缩BCD码= 0105 H 非压缩BCD码= 3135 H ASC码29= 29H压缩BCD码= 0209H 非压缩BCD码= 3239H ASC码第 二 章 8086/8088 微处理器2.1 答:从功能上讲由两部分组成 总线接口单元BIU和执行单元EU组成。总线接口单元(BIU)是微处理器内部与存储器和I/O接口传送信息的通道,总线接口单元负责从内存中将指令送到指令队列中;负责把数据从内存或I/O接口送到执行单元(EU);负责将执行单元的运行结果送到内存或I/O接口。EU的功能是负责译码

5、和执行指令。2.2 答:指令队列(Queue)存放预取的指令,采用预取指令的方法将减少微处理器的等待时间,提高运行效率。8086CPU中指令队列有6个;8088 CPU中指令队列有只有4个。2。3 答:8086/8088 CPU中有16个16位的寄存器.4个段地址寄存器是代码段寄存器CS ;数据段寄存器DS;堆栈段寄存器SS 和扩展段寄存器ES 。它们是用来存放每一个段的首地址(段基地址)。一个指令指针寄存器IP是用于存放要执行的指令的偏移地址,它不能作为一般寄存器使用。一个标志寄存器(又称为程序状态寄存器)用于反映指令执行结果或控制指令执行形式。)有8个通用寄存器,通用寄存器分为数据寄存器与

6、指针和变址寄存器两组。数据寄存器包括AX(累加器)、BX(基址寄存器)、CX(计数器)和DX(数据寄存器),一般用来存放16位数据,故称为数据寄存器.其中的每一个又可根据需要将高8位和低8位分成独立的两个8位寄存器来使用,即AH、BH、CH、DH和AL、BL、CL、DL两组,用于存放8位数据,它们均可独立寻址、独立使用.数据寄存器用来存放计算的结果和操作数,也可以存放地址。指针寄存器包括堆栈指针寄存器SP、基址指针寄存器BP一般用来存放地址的偏移量和用于寻址内存堆栈内的数据变址寄存器包括原变址寄存器SI和目的变址寄存器DI,一般用来存放地址的偏移量为存储器寻址时提供地址。 2。4 答:标志寄存

7、器又称为程序状态寄存器,是一个16位的寄存器,标志寄存器设置了9个标志位.这9个标志位按功能分可以分为两类:一类为状态标志,状态标志表示执行某种操作后,ALU所处的状态特征,这些状态标志会影响后面的具体操作。状态标志有6个:CF、AF、SF、PF、OF和ZF。另一类为控制标志,用来控制CPU操作,反映存储器地址变化的方向、是否允许中断及在执行程序时是否进行单步中断。控制标志有3个:DF、IF和TF控制标志是人为设置的,每个控制标志都对某种特定的功能起控制作用。2。5 答: 8086与8088有3点不同之处;1。 8086有16条数据线而8088只有8条数据线,2. 8086而8088.3。 8

8、086而8088。2。6 答:堆栈是在内存中开辟的一个特定的区域,用以存放CPU寄存器或存储器中暂时不用的数据和有用的信息。在数据段和附加段存放数据时,一般是从低地址开始向高地址存放数据,而用PUSH指令向堆栈中存放数据时总是从高地址开始逐渐向低地址方向增长。堆栈指令遵循“先进后出”,“后进先出的原则,凡是用PUSH指令最后推入堆栈的数据,用POP指令弹出时最先出栈。在操作时是以字为单位。2.7 答:8086/8088 CPU各有20根地址总线,可寻址范围是1M个存储单元。8086CPU有16根数据,一次可以读一个字也可以读一个字节。8088 CPU有8数据总线一次以读一个字节。2.8 答:1

9、。物理地址就是实际地址,它具有20位的地址值,它是唯一标志1MB存储空间的某一单元的地址。2。逻辑地址由段基址和偏移量组成。程序以逻辑地址编址,而不是物理地址。3。在8086/8088存储空间中,把16个字节的存储空间看作一节。为了简化操作,要求各个逻辑段从节的整数边界开始,也就是说段首地址低4位应该是“0”,因此把段首地址的高16位称为“段基值”。4。 偏移量是该物理地址距离段首地址的单元数。2。9 答:总线上传输信号的一组导线,作为微机各部件之间信息传输的公共通道。系统总线按功能分数据总线、地址总线、控制总线。2。10答:1.8086/8088 CPU把存储器分为代码段、数据段、堆栈段、附

10、加段。因为8086/8088的寄存器是16位,最大只能寻址64K个单元的存储空间,为了增大寻址空间把存储器进行分段,这样就可以寻址1MB存储空间。2.每段最大空间为64KB.2。11 答:(1)2300H;1010H;24010H (2) 0000H;1000H;01000H(3)2AE0H;1690H;2C490H (4) 7369H;0010H;736A0H2.12 答:1。数据段首地址是12000H末地址是21FFFH。2.附加段的首地址是20A30H末地址是30A2FH。3.代码段的首地址是470E0H=470EH10H末地址是570DFH=(470E0H+FFFFH)。2.13答:8

11、086/8088 CPU复位以后,除代码段寄存器外,其余标志寄存器、指令指针寄存器、各段寄存器及指令对列全部被清零。2.14答:在一个读总线周期ALE在第一个时钟周期为高电平,其余周期为低电平./S7在第一个时钟周期为低电平,其余周期为高电平。在第一个时钟周期为低电平,第二、三周期为高电平。一直为高电平.M/一直为高电平.DT/一直为低电平.2.15 答:1.8086 CPU读/写总线周期时,最少包含4个时钟周期.2.CPU在T3状态的前沿(下降沿)对Ready信号进行采样。若CPU在T3状态的开始采样到Ready信号为低电平,那么将在T3和T4之间插入等待状态TW.3。TW可以是一个,也可以

12、是多个。CPU在每个TW的前沿处对Ready信号进行采样.当在TW状态采样到READY信号为高电平时,在当前Tw状态执行完,进入T4状态。第 三 章 存 储 器3.1 答:1容量:存储器芯片的容量是以1位二进制数(bit)为单位,因此存储器容量是指每一个存储器芯片所能存储的二进制数的位数。(存储器容量=存储单元数位数) 2存储速度:存储器的基本操作是读出与写入,称为“访问或“存取”。存储器的存储速度有两个时间参数:(1)访问时间(Access Time) TA 从启动一次存储器操作,到完成该操作所经历的时间. (2)存储周期(Memory Cycle) TMc 启动两次独立的存储器操作之间所需

13、的最小时间间隔。3存储器的可靠性:4性能/价格比:5其他指标(存储器的选择有时还应考虑功耗、集成度等指标).3。2答:按存储器的读写功能分可以分为随机读写存储器(RAM)和只读存储器(ROM)。随机读写存储器RAM可以随机地按指定地址从存储单元存入或读取(简称存取)数据,存放在RAM中的信息,一旦掉电就会丢失.随机读写存储器RAM可分为静态随机存取存储器SRAM、动态随机存取存储器DRAM和集成随机读写存储器IRAM。只读存储器(ROM)的基本特征是在正常运行中只能随机读取预先存入的信息,即使在断电情况下,ROM仍能长期保存信息内容不变,所以它是一种永久存储器。只读存储器(ROM)可分为掩膜只

14、读存储器(Mask ROM)、可编程只读存锗器(PROM)、紫外线可擦除可编程只读存储器(EPROM)、电可擦除编程只读存储器(E2PROM)和快速可擦编成只读存储器(Flash EPROM)。掩膜只读存储器其结构简单,存储信息稳定,可靠性高,能够永久性保存信息;可编程只读存储器是由半导体厂家制作“空白”存储器阵列(即所有存储单元全部为1或全部为0状态)出售,用户根据需要可以实现现场编程写入,但只能实现一次编程;紫外线可擦编程只读存储器、电可擦除编程只读存储器和快可擦编程只读存储器等不仅可以现场编程。还可以擦除原存储的信息内容,写入新的信息。3.3 答:SRAM的特点是在一个存储单元所用晶体管

15、数目多,但不需要刷新电路。DRAM的特点是在一个存储单元所用晶体管数目少,但需要刷新电路.IRAM的特点是将动态随机存取存储器和刷新电路集成在一片芯片中,它即具有SRAM速度快的优点,又具有DRAM的廉价。IRAM实际上是附有刷新电路的 DRAM.它在现代微机系统中得到广泛应用,大容量的内存一般都是用IRAM。3。4 答:1)13条地址线和4条数据线;2)19条地址线和1条数据线3)17条地址线和4条数据线;4)15条地址线和8条数据线 3.5 答:1)RAM的存储容量为256K8 bit;2)有18条地址线和8条数据线;3)若采用6116需要128片,若采用6264需要32片,若采用6212

16、8需要16片,若采用2114需要512片,若采用2141需要512片.3。6 答:1)ROM的存储容量为512K8 bit;2)需要19条地址线和8条数据线;3)若采用2764需要64片,若采用27128需要32片,若采用2816A需要256片,若采用28F256需要16片。3.7 答:常用的存储器片选控制方法有线选法、全译码法和部分译码法。线选法地址线可以不用完,也无需专门的译码电路。但由于高位地址线可随意取值0或1.所以,存在地址重叠,并且造成存储器地址不能连续分布.全译码法所有地址线均参加地址译码,芯片的地址线直接和低位地址总线相连,高位地址总线经译码器或逻辑电路与各芯片的片选信号相连。

17、部分译码法与全译码法类似,只是高位地址线中有一部分进行译码,产生片选信号,而不是全部。这种方法称为部分译码法。3。8 答:第一片的首地址为21000H(错),末尾地址为24FFEH。第二片的首地址为21001H,末尾地址为24FFFH。第三片的首地址为25000H,末尾地址为28FFEH。第四片的首地址为25001H,末尾地址为28FFFH。3.9第一片 A19A12=01000000,地址范围是 40000H40FFEH第二片 A19A12=01000000,地址范围是40001H40FFFH第三片 A19A12=01000001,地址范围是 41000H41FFEH第四片 A19A12=0

18、1000001,地址范围是 41001H41FFFH 3。10 (有问题A0和BHE未画)按现有的连线地址为第一片 A19A13=1000000,地址范围是 80000H81FFFH_第二片 A19A13=1000001,地址范围是 82000H83FFFH_图31 8086CPU与存储器连接电路图第三片 A19A13=1000010,地址范围是 84000H85FFFH_第四片 A19A13=1000011,地址范围是 86000H87FFFH_图32 8086CPU与存储器连接电路图3.11 1)答:是译码功能.2). 3)答:ROM0、ROM1的地址范围。94000H97FFFH3。12

19、答:存储器(1)的地址范围为80000H80FFEH;存储器(2)的地址范围为80001H80FFFH.(题目有错,存储器(4)的地址范围为81001H81FFFH) 3。13 答:1)系统的存储容量为: B3FFFHB0000H+1=4000H=16KB ; 2)需要6264芯片:(16K8bit)/8K8bit=2片;3)画出系统连接图.两片6264芯片的地址范围如表所示,高位地址A14A19参与译码形成两片6264的片选信号,奇地址存储器芯片和偶地址存储器芯片由A0和区分.存储器与系统总线的连接电路如图题3.13所示.A19A18A17A16A15A14A13A12A11A10A9A8A

20、7A6A5A4A3A2A1A01011000000000000000010110011111111111111图题3。13 存储器扩展电路3。14答:(不是8086系统)3.15在8086CPU组成的系统中,用4片2764(8K8 bit)存储芯片组成随机ROM存储系统,其第一片的首地址为(C000H:8000H),试画出存储器与CPU的连接电路图。答:第 四 章 80868088指令系统4.1答:机器语言的每一条指令是以二进制为代码的指令,它能够被计算机直接执行。汇编语言是用助记符或用符号来编写指令,是一种与机器语言一一对应的语言。机器不能直接执行程序,程序必须经过翻译,机器才能执行。高级语

21、言是面向过程的语言,它不依赖于特定的机器,独立于机器,用同一种高级语言编写的程序可以在不同的机器上运行而获得相同的结果。4.2请指出以下各指令的源、目的操作数所使用的寻址方式。(1)MOVSI,2100H 源:立即数寻址;目:寄存器寻址 (2)SBB BYTE PTR DISPBX,7;源:立即数寻址;目:寄存器相对寻址(3)ANDDI,AX 源:寄存器寻址;目:寄存器间接寻址 (4)ORAX,609EH 源:直接寻址;目:寄存器寻址 (5)MOV BXDI30H,CX 源:寄存器寻址;目:基址变址相对寻址 (6)PUSH ES:BP 源:寄存器间接寻址;目:隐含寻址(7)CALL DIDIS

22、P 寄存器相对寻址 (8)JNZShort_ label 直接寻址 (9)CBW BL (指令错) (10)MOV AX, 1000H 源:直接寻址;目: 寄存器寻址 (11)MOV AX, ARRAY BXSI;源:基址变址相对寻址;目:寄存器寻址(12)MUL BL 源:寄存器寻址;目: 隐含寻址 (13)MOV AX, BXSI 源:基址变址寻址;目:寄存器寻址 (14)MOV AL,TABLE 源: 直接寻址;目:寄存器寻址 (15)MOV AX,DISPBX+DI 源:基址变址相对寻址;目:寄存器寻址 (16)MOV AX,BX 源:寄存器间接寻址;目:寄存器寻址4.3答:基址寄存器

23、BX、基址指针寄存器BP、原变址寄存器SI、目的变址寄存器DI。4.4下列各条指令是否有错?如果有,请指出错误之处。(1) MOVDS,1000H 立即数不能直接给段寄存器送数(2) MOV 100,23H 目的操作数应指明类型,改为BYTE PTR 100 (3)ADDAX,BXBP6 存储器寻址不能有两个基地址BX,BP (4)PUSH DL 进栈是以字为单位 (5)INAX,3FH I/O接口地址不能加括号 (6)OUT3FFH,AL 口地址3FF应放在DX中 (7)LESSS,SI SS不能存放偏移量 (8)POPAX AX不用来做间址寄存器 (9)IMUL4CH 乘法中源操作数不能是

24、立即数 (10)SHLBX,5 移位超过1位应放在CL中 (11)INT300 立即数(向量码)应小于255 (12)XCHGDX,0FFFH 此指令中不能有立即数 (13)POP AL 出栈是以字为单位 (14)DIV 32H 除法中原操作数不能是立即数(15)MOV AX,BYTE PTRSI 源操作数和目的操作数不等宽 (16)MOV DX,DS:BP 正确 (17)MOV 128,CL 目的操作数不能为立即数 4.5设若标志寄存器原值为0A11H,SP=0060H,AL=4。下列几条指令执行后,标志寄存器、AX、SP的值分别是多少?PUSHF ;FSP ; SP=5EH , 5EH=0

25、A11H LAHF ;F低8AH ; AH=11HXCHGAH,AL ; AH 04H , AL=11H PUSHAX ; SP=5CH , 5CH=0411H,SAHF ;AHF低8 ; POPF ; SPF标志寄存器=0411H,AX= 0411H,SP=005EH4.6已知DS=2000H,有关的内存单元值为:(21000H)=00H,(21001H)=12H,(21200H)=00H,(21201H)=10H,(23200H)=20H,(23201H)=30H,(23400H)=40H,(23401H)=30H,(23600H)=60H,(23601H)=30H,符号COUNT的偏移地

26、址为1200H。执行下列指令后,寄存器AX、BX、SI的值分别是多少?MOVBX,OFFSET COUNT BX=1200H MOVSI,BX SI=1000H MOVAX,COUNTSIBX AX=_3040H_,BX = _1200H_,SI=_1000H_4.7答:AX=322FH , 标志寄存器值为0410H4。8设单元DATA在内存数据段中的偏移量为24C0H,在24C0H24C3H单元中依次存放着55H、66H、77H、88H。下列几条指令执行后,寄存器AX、BX、CL、SI、DS的值分别是多少?MOVAX,DATA ; AX=6655H LEASI,DATA ; SI=24C0H

27、 MOVCL,SI ; CL=55H LDSBX,DATA ; DS=8877H,BX=6655H 4.9若AX=26D3H,CX=7908H,CF=1,OF=0,执行下列指令后,寄存器AX、CX的值分别是多少?_ AX=A74CH _ CX=FA08H _CF=_0_OF=_0_。SALCH,1 CH=FA,CL=08H RCRAX,CL AX=A726H , CF=1 ROLAL,1 AL=4CH , CF=0 4。10答:原串在数据段中,但可以段超越。目的串必须在附加段中.4.11答: M/=1;DT/=1;=1;=0;数据总线上的数是0508H;地址总线上的数分是49420H4。12

28、(与21题重)答:AL=23H,功能将压缩的BCD码转换为二进制.4.13 答:上述程序段执行后,字节单元HCOD的内容是43H;HCOD1的内容是35H。该程序段的功能是将压缩的十六进制转换为ASCII字符。4.14执行下面的程序段后,(CL)= 02H ,(AX)= 0040H 。XOR BX, BXMOV AX, 0010H MOV CL, 2SAL AL , CLMOV BL , ALSAL AL , CLADD AX , BX 4.15 问:(1)初值(AL)=37H时,程序段执行结果:(AL)= 07H (2)初值(AL)=9FH时,程序段执行结果:(AL)= 0FFH 4。16下

29、列程序段中,以X为首址的字单元中的数据依次为1234H、5678H;以Y为首址的字单元中的数据依次为8765H、4321H。阅读程序,给出必要的程序注释并完成程序后的问题.LEASI,X ;SI=0000HLEADI,Y ; DI=0004HMOVDX,SI2 ; DX=5678HMOVAX,X ; AX=1234HADDAX,X ; AX=2468HADCDX,SI2 ; DX=ACF0HCMPDX,DI2 ; ACF0H与8765H比JLL2 ;小于转移到L2CMPAX,Y ;大于2468H与4321比JLL1 ;小于转移到L1JMPEXIT ;无条件转移到EXITL1:MOVAX,1 ;

30、给AX送1JMPEXIT ;无条件转移到EXITL2:MOVAX,2EXIT:以上程序代码执行之后,AX= 2 ;DX= ACF0H 4.17答:程序将依次向堆栈压入的数据为0003H、0002H、0001H。该程序段实现了将二进制转换十进制功能.4.18答:程序功能是计算AX=110,BX=10H起的累加和。AX=10,BX47H,CX=0。MOV AX , 0000HMOV BX , 0010HMOV CX ,10 LP: INC AXADD BX , AXLOOP LPHLT4.19答:以上程序代码执行之后,AX= 2 ;DX= ACF0H 4。20阅读下列程序段,给出必要的程序注释并完

31、成程序后的问题。 ADD AL,AL ;2*AL ADD AL、AL ;4AL MOV BL,AL ;ALBL SAL BL,1 ;8*AL ADD AL,BL ;12AL HLT(1)该程序段的功能是什么? 答:把AL中的内容乘以12 (2)设AL的初值为0AH,执行该程序段后,AL为多少? 答:AL78H4。21已知有程序段如下:(与12题重)(1)该程序段的功能是什么? 答:将BCD码转换成二进制 (2)执行该程序段后,AL 23H 4.22、下列程序段要求在内存40000H开始的顺序30个单元中存放着8位无符号数,将它们的和放在DX中,试填空完成该程序(并加入必要的注释)或自行编制一段

32、程序完成上述功能. MOV AX,4000H ; MOV DS,AX ; 送段首地址 MOV SI,0000H ; 送偏移量 MOV CX, 30 ; 送循环次数 XOR AX,AX ; 清零 GOON: ADD AL, SI ; 两数相加 ADC AH,00H ; 加进位位 INC SI ; 修改地址 DEC CX ; 计数器减1 JNZ GOON ; 不为零循环 MOV DX ,AX ; 结果送DX 4.23在AL中有一个十六进制数的ASCII码,完成下面程序段在每一空白处填上一条适当指令(并加入必要的注释),实现将AL中的ASCII码转换成二进制数。 CMP AL,3AH ; 与3AH

33、比较 JC DONE ; 小于转移到DONE SUB AL,7 ; 大于减7 DONE:SUB AL,30H ; AL减30H HLT 4。24已知附加段中有一块长50个字的数据区,首址为DEST。欲编程将它们全部初始化为0FFFFH值,试在下面程序段的空白处填上适当的指令或操作数(并加入必要的注释),以实现上述功能。 LEA DI,DEST ; 取DEST偏移量MOVCX, 100 ; 送计数值CLD ; 清方向标志位,DF=0MOVAL,0FFH ; 将AL0FFHREP STOSB ; 将送100个字节FFH到首址为DEST区域4。25已知附加段中有一块长50个字的数据区,首址为DEST

34、.欲编程将它们全部初始化为0FFFFH值,试在下面程序段的空白处填上适当的指令或操作数(并加入必要的注释),以实现上述功能.(与24题重) DI,DEST ; MOVCX, ; CLD ; MOVAL,0FFH ; ; 4。26附加段中有某字符串首址为BLOCK,长17个字节.欲查找其中第一次出现字符“e”的位置,并将该位置所在的偏移量入栈保护。试在下面程序段的空白处填上适当的指令(并加入必要的注释)或操作数以实现上述功能.MOVDI, OFFSET BLOCK ; 送BLOCK 的偏移量 MOVAL, 65H ; 送eASCII码 MOVCX, 17 ; 送计数值 CLD ; 方向标志位清零

35、 REPNZ SCASB ; 寻找e JNEOTHER ; 找到e转到OTHER DECDI ; 修改地址 PUSH DI ; 偏移量入栈保护 OTHER:(略)4.27已知有某字串BUF1的首址为0000H,BUF2的首址为0010H,数据段与附加段重合。欲从BUF1处开始将10个字数据顺序传送至BUF2处,试在下面程序段的空白处填上适当的指令或操作数以实现上述功能。LEASI,BUF1 ; 送BUF1的偏移量 ADDSI, 12H ; 地址移动到字符串最后 LEADI,BUF2 ; 送BUF2的偏移量ADDDI, 12H ; 地址移动到字符串最后STD ; 方向标志位清零MOVCX, 10

36、 ; 送计数值 REP MOVSW ; 进行串操作4。28在DAT和DAT1两个字节变量单元中有两个十进制数的ASCII码,编程实现将这两个ASCII码转换为两个BCD码,并以压缩形式存放在REST字节变量单元中。试填写该程序划线部分,并加入必要的注释. MOV AL,DAT ;取第一个数 SUB AL,30H ;将ASCII码转为BCD码 MOV CL,4 ; 送移位数 SHL AL,CL ;将BCD码放在AL高四位中 MOV BL,DAT1 ;取第二个数 SUB BL,30H ;将DAT1中的ASCII码转为BCD码 OR AL,BL ;将两个BCD码合并在AL寄存器中 MOV REST,

37、AL ;将压缩形式的BCD码存人REST中 HLT第 五 章 汇编语言程序设计5。1 答:标号在指令性指令的名字,写在指令前面,标号后必须有冒号.变量在伪指令前是定义某一数据区所起的名字,它后面不带冒号.标号和变量都有段、偏移量的属性,标号的类型是远和近型,变量的类型是字节、字、双字等。07H0100H ADD100H00H00H01H00H00H00H01H2018H ADD204H05H05H05H05H07H01H2068H ADD3题5。3图5。2 答:指令性指令是给CPU的命令,它是由汇编程序翻译成机器语言指令,在程序运行时由CPU来执行,每条指令都对应CPU一种特定的操作。伪指令不

38、汇编成机器语言,仅仅在汇编过程中告诉汇编程序应如何汇编。5.3 答:ADD1、ADD2、ADD3的段基址为1000H;ADD1、偏移量为2000H、类型为双字;ADD2、偏移量为2018H、类型为字节;ADD3、偏移量为2068H、类型为字。5.4 答:分配情况如右图02H1006H ADD112H9AH1009H ADD256H42H41H题5。4图5。5答:(定义了堆栈段81字节、数据段(17字节)和代码段)05H0100H ADD105H050127H题5.6图5.6答:ADD1占有多少个字节5。7答: 1依据设计任务,抽象出描述问题的数学模型。2确定实现数学模型的算法或求解的具体步骤和

39、方法。3绘制出程序流程框图。 4分配存储空间及工作单元(包括寄存器)。确定数据段、堆栈段、代码段及附加段在内存中的位置。 5依据流程图编写程序。6静态检查。7上机调试。8程序运行,结果分析。5。8 答: 源程序结构一般包括4个段,它们是代码段、数据段、附加段和堆栈段。其中代码段是必须存在的,其余段视具体情况而定。一般用到四种程序结构:顺序结构,分支结构,循环结构,子程序结构.5。9 答: XOR AX, AX MOV DX , 0MOVAH,45HMOVDL,AHANDDL,0FH ADD DL, 30HANDAH,0F0H MOVCL,4SHRAH,CLADD DL, 30HADDAX,DXHLT94H DATA116H26H89H30H DATA255H04H74H RES5。10 答: MOV AL , A MOV BL , B IMUL BL MOV CX , C ADD

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服