微机原理与接口技术 第4章课后作业答案PPT课件_第1页
微机原理与接口技术 第4章课后作业答案PPT课件_第2页
微机原理与接口技术 第4章课后作业答案PPT课件_第3页
微机原理与接口技术 第4章课后作业答案PPT课件_第4页
微机原理与接口技术 第4章课后作业答案PPT课件_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、第4章从汇编语言程序4.1data开始的8个连续单元中依次存储数据11H、22H、33H、44H、55H、66H、77H、88H的数据定义语句分别用DB、DW、DD伪指令来写入DD伪指令,该DD伪指令定义的数据字节其定义形式为:DATADB11H、22H、33H、44H、55H、66H、77H、88HDATADW2211H、4433H、6655H、8877HDATADD44332211H、88776655H4.2程序的数据段定义如下(string db123dsegdends (1) moval,DATA1(2)MOVBX,偏移数据2 (3) leasi,STRINGADDDI, 取SI解:变量DATA1的值.指令执行后,(AL)=10H .变量DATA2的偏移地址.指令执行后,(BX)=0003H .2 (3)将变量STRING的偏移地址传递到寄存器SI,然后将SI的内容和DI的内容相加后DI .指令(DI)=(DI) 0017H.4.3试制了求出两个无符号双胞胎长度之和的程序。 两个数分别在me1和me2单元中,在SUM单元中。 解:DSEGSEGMENTMEM1DW1122H、3344HMEM2DW5566H、7788HSUMDW2DUP (? ) dsegendscsegmentssumercs : cseg,DS:DSEGSTART:MOVAX,DSEGMOVDS,AXLEABX,MEM1LEASI,MEM2LEADI,SUMMOVCL,2 CLC again : 使用ADCAX SIMOVDI、AXADDBX、2ADDSI、2ADDDI和2 looppagainhltcutsendsendstart4. 4试验程序测试AL寄存器的第4位(bit4)是否为0。有:寄存器AL 例如,TESTAL,10HJZNEXT.NEXT:或: MOVCL,4svalil,CLJNCNEXT.NEXT:.4,4.5试制程序将BUFFER的8位二进制文件转换为ASCII代码,位于answer开始的存储器单元中解: DSEGSEGMENTBUFFERDB? ANSWERDB3DUP (? dsegendscsegmentssumercs:cseg,DS:DSEGSTART:MOVAX,DSEGMOVDS,AXMOVCX,3; 最多3取十进制(255)LEADI,ANSWER DI取指向结果存储单元XORAX、AXMOVAL、BUFFER的转换二进制数MOVBL,0AH,基数10AGAIN:DIVBL; 用除以10的馀数方法转换ADDAH,30H的十进制数是ASCII码MOVDI、AH; 保存当前结果的INCDI下一位保存单元,5,ANDAL,AL; 商品是0吗(转换完成了吗? ) JZSTO; 结束后,结束MOVAH、0LOOPAGAIN,否则循环继续STO:MOVAX、4C00HINT21H; 返回DOSCSEGENDSENDSTART4.6的数据项是DATA1DBHELLO! 假定定义为GOODMORNING! “”DATA2DB20DUP (? )使用串行操作指令创建程序段,(分别完成将DATA1的字符串从左向右传送至DATA2的功能。 (2)传送后,比较DATA1和DATA2的内容是否相同。 (将DATA1的第3和第4字节加载到AX中。 (4)将ax的内容以从DATA2 5开始的字节为单位进行保存。 解: (1)MOVAX,SEGDATA1MOVDS,AXMOVAX,seg data 2,6,MOVES,AXLEASI,DATA1LEADI,DATA2MOVCX,20CLDREPMOVSB(2)LEASI,DATA1LEADI,DATA2MOVCX,20 的双曲馀弦值。 的双曲馀弦值。 (3)LEASI,DATA1ADDSI,2 lodsw (4)执行lead I,DATA2ADDDI,5STOSW,7,4.7以下命令后,AX寄存器的内容是多少tabled w 10,20,30,40,50 entry dw3. movbx,off ENTRYMOVAX,BX解: (ax )=创建1,00h4. 8程序段,并将字符串1的最后20个字符移动到字符串2 (不重新排序)。 解:首先确定STRING1字符串的长度。 字符串的定义请求以“$”符号结束,因此可以通过检测“$”符号来决定字符串的长度,如果字符串的长度为COUNT,则为LEASI,STRING1LEADI,STRING2ADDSI,COUNT-20MOVCX,20CLDREPMOVSB,8 4.9 DD 首先将BX内容从逻辑上向左移位一个比特,其最高移位为承载比特CF,然后将AX内容向左移位带承载比特,将AX的最高移位为CF,将原始CF的内容(即BX的最高移位为AX的最低移位),以及最后将DX内容(即,BX的最低移位)移位为AX的最低移位试制SHLBX、1RCLAX、1RCLDX、14.10程序,比较AX、BX、CX的带符号数的大小,将最大数设置为AX。 解:要比较带符号数的大小,请使用符号数比较命令JG等。 如果CMPAX、BXJGNEXT1XCHGAX、BXNEXT1:CMPAX、CXJGSTOMOVAX、CXSTO:HLT4.11接口03F8H的第1位(b1 )和第3位(B3 )同时为1,则接口03FBH内准备的8位数据只有在数据准备好的情况下,同时为1。 试制程序从上述接口读取200字节的数据,按顺序放入DATA的起始地址。 9、解:从输入接口03F8H读入的数据满足xxxxxxb时,可以从接口03FBH输入数据。 LEASI,DATAMOVCX,200NEXT:MOVDX,03F8HWAIT:INAL,DXANDAL,0AH; 判断b1和b3比特是否同时为1CMPAL、0AHJNZWAIT的b1比特和b3比特是同时1个读取数据,除此之外,MOVDX,03FBHINAL,DXMOVSI、ALINCSILOOPNEXTH

温馨提示

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

评论

0/150

提交评论