(何小海版)微机原理与接口技术部分课后习题_第1页
(何小海版)微机原理与接口技术部分课后习题_第2页
(何小海版)微机原理与接口技术部分课后习题_第3页
(何小海版)微机原理与接口技术部分课后习题_第4页
(何小海版)微机原理与接口技术部分课后习题_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

字符串操作指令的特点:1.前缀可用于重复操作;2.自动修改每个操作的输入输出内容,当DF=0时递增,当DF=1时递减;3.所有源操作数地址都放在SI中,在DS段中,字符串长度64K;所有目标操作数地址都放在直接指令中,在专家系统段中,字符串长度64K;4.如果条件满足,并且使用重复前缀时重复CX 0,则重复一次CXCX1,否则结束重复;5.当重复该操作时,IP不会改变,并且该操作将在中断返回后继续。使用字符串操作说明时注意:1.源字符串第一个(最后一个)地址目标字符串的第一个(最后一个)地址;2.CX 字符串长度;3.设置测向值;4.选择重复前缀;5.当使用条件重复前缀时,判断结束条件(即CX=0或ZF=0/1)指令执行时间:计算机中的时间单位:(1)。指令周期:执行一条指令所需的时间。(2)。总线周期:中央处理器访问内存或输入输出端口一次所需的时间;(3)。时钟周期:计算机主频率的倒数,用T表示,即T=1/f1.尝试分别在以下指令中解释用于源操作数和目标操作数的寻址方法:回答:目标操作数源操作数(1)立即MOVAX,0FFFFH寄存器(2)移动器、ax寄存器寄存器(3) xolcl,100h直接注册(4)添加国际),DX寄存器进行注册(5)搬家公司:2000小时),CL直接登记(6)副BX西,1号基地立即改变(7)ADCAX,BX SI 10H寄存器相对基址变化(8)PUSHDS隐式寄存器(9) CLD暗示(10)化学机械抛光BP DI),CL基变量寄存器2.如果(BX)=1123H,(SI)=1968H,位移=0313H,(DS)=1971H,请尝试确定这些寄存器产生的有效地址和物理地址,以及以下寻址方法:回答:环境影响评估站点(1)直接寻址;0313H 19A23H(2)BX语域间接寻址;1123H 1A833H(3)BX寄存器的相对寻址;1436H 1AB46H(4)用BX和SI的基址寻址;2A8BH 1C19BH(5)具有BX和国际单位相对基址的地址。2D9EH 1C4AEH3.继续执行以下指令,并用执行指令的结果填空。回答:最大功率,2060HAL=60H AH=20H CF=MOVDS,AXDS=2060H小时AH=20H小时CF=ADDAL,AHAL=80H AH=20H CF=0INCAXAL=81H AH=20H CF=0MOVDX,512DL=00H DH=02H CF=0亚像素,DXAL=81H AH=1EH CF=0第3章:汇编语言编程1.本章的学习要求(1)要熟悉的内容:汇编语言的格式和句子结构。(2)需要掌握的内容:指示性陈述、强制性陈述及其区别和作用。(3)。应熟悉掌握的内容:各种结构的汇编语言编程方法,特别是分支结构和循环结构程序的特点和设计。2.本章重点和难点分析:伪指令、程序设计和子程序中的参数很难通过栈来传递。通过看例子,做作业和在电脑上练习。例如,汇编程序是将由助记符号编写的汇编语言源程序转换成可由计算机直接执行的目标程序的软件,即:装配工链接器目标程序可执行文件汇编语言源程序。空对地导弹MASM。OBJ林克。可执行程序的扩展名从上图可以看出,汇编语言源程序(带有。生成一个二进制编码的OBJect程序。obj)在被“汇编器”汇编之后,然后生成一个可执行文件(。exe)通过“链接器”在计算机上执行或使用调试程序调试。指示语句(伪指令)是告诉汇编程序如何将汇编语言源程序转换成目标程序的语句。生成可执行目标程序后,伪指令在软件中是不可见的。例如,SEGMENT表示段的开始,ENDS表示段的结束。ASSENT告诉汇编程序将某个段寄存器设置为存储某个逻辑段的段地址,即在源程序中明确指出逻辑段和物理段之间的关系。当汇编程序汇编一个逻辑段时,它可以使用相应的段寄存器来寻址逻辑段中的指令或数据。也就是说,假设是建立一个段寄存器和段名的对照表。在汇编过程中,汇编程序可以找到该段属于哪个段寄存器。对于出现在该比较表中的存储器操作数,在寻址期间只需要偏移地址,否则还应给出段地址。关键字with表示取消该段寄存器的先前设置,并执行ASSENT伪操作。使用ASSENT语句只告诉汇编程序段寄存器和定义的段之间的对应关系。然而,这并不意味着这些段地址在组装后已经被加载到相应的段寄存器中。这些段地址的实际加载仍然需要由程序来完成,这四个段寄存器的加载略有不同。3.本章典型案例分析:示例1如果从0200小时单位开始有100个数字,编译一个程序来检查这些数字。正数保持不变,负数补充后返回。数据段组织0200HSTRING DB 4 DUP (-55,5 DUP(6,-10,-8,9),2 DUP(-4,0)数据结束堆栈段段堆栈分贝100 DUP(?)堆栈结束代码段假设CS:CODE代码、DS:DATA数据、ES:DATA数据、SS:STACK开始前进开始:推DSMOV AX,0推斧头MOV斧头,数据MOV DS,AXMOV ES,AXMOVCX,100岁LEA SI,STRING西MOV街:号和铝,铝JNS结束;所有 0,跳转到结束负总责;铝目的数据块报头时,数据从数据块报头传输。流程图如图4-12所示。00000H 00000H 00000H来源数量根据块源的数量块数据块目的地来源数量目标数据块数据块FFFFFH(a) (b) (c)图4-11数据块之间的三种情况开始源数据块标题地址目的数据块标题地址CX字节移动(国际)(直接投资)?NY国际单位制(国际单位制)(CX)-1DI(DI) (CX)-1(DI)(SI)国际单位制(国际单位制)1去离子(去离子)1硅(硅)-1去离子(去离子)-1(CX)=0?(CX)=0?有约束力的NNYY图4-12程序如下:堆叠堆叠DW 64 DUP(?)STACKENDSCODESEGMENT假设CS:代码,SS:堆栈开始:MOVCX,0010;取移动字节数(16字节)MOV思,3100小时;取源块的第一个地址MOV DI,3200H取目的块的第一个地址化学机械抛光学会;从第一个地址开始?JA A2是的,转移CX社会保险协会;不,从最后一个地址开始CX发展部DEC SIDEC DIA1:MOV阿尔,西;从最后一个地址开始移动MOV迪,阿尔DEC SIDEC DIDECJNE A1JMP A3A2:MOV阿尔,西;从第一个地址开始移动MOV迪,阿尔国际公司工业和信息化研究所DECJNE A2A3:MOV AH,4CHINT 21HCODEENDS结束开始4.本章作业(附答案):2.如果从单元2000H开始有一个1000字节的数据块,它应该从2200H开始被传送到存储区,并且程序应该通过以下三种方法分别被编程:(1)不需要一串操作说明。(2)用单个传输的字符串操作数据传输指令。(3)用带重复前缀的字符串操作数据传输指令。程序如下:数据采集组织2000小时N1DBn1,n2,n1000N2EQ 2000H 10001CONEQU1000数据结束STACKSEGMENTST

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论