内蒙古工业大学微型计算机原理和应用汇编程序实验答案.doc

内蒙古工业大学微型计算机原理和应用汇编程序实验答案.doc

  1. 1、本文档共33页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
内蒙古工业大学微型计算机原理和应用汇编程序实验答案

内蒙古工业大学??? ?微型计算机原理及应用实验 参考汇编程序 ? 实验01A 将FFFFH送到AX,BX,CX,DX,SI,DI,BP寄存器 程序如下: CODE SEGMENT ASSUME CS:CODE START PROC FAR STT:PUSH DS ????SUB AX,AX ????PUSH AX ;============================== ????MOV AX,0FFFFH ????MOV BX,AX ????MOV CX,AX ????MOV DX,AX ????MOV SI,AX ????MOV DI,AX ????MOV BP,AX ;============================== ????RET START ENDP CODE ENDS END STT ? ? 实验01B 将FFH送到内存1000H,1001H,1002H,1003H,1004H单元中 程序如下: DATA SEGMENT ORG 1000H H1 DB 5 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR STT:PUSH DS ????SUB AX,AX ????PUSH AX ;============================== ????MOV AL,0FFH ????MOV DI,1000H ????MOV CX,5????;循环5次 LP1:MOV [DI],AL???;FF放入1000H-1004H中 ????INC DI ????DEC CX ????JNZ LP1 ;============================== ????RET START ENDP CODE ENDS END STT ? ? 实验02A 编写?一个加法程序,在数据段偏移地址1000H处开始,存放有两个3字节长的数据(高位对应高地址,低位对应低地址),求这两数据(十六进制数)的和,并将结?果放在两数据之后,利用DEBUG调试程序,并求解:CCBBAAH+223344H=?CCBBAA+554433H=? 程序如下: DATA SEGMENT ORG 1000H H1 DB 10 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR STT:PUSH DS ????SUB AX,AX PUSH AX Mov??ax,dseg Mov???ds,ax ;============================== MOV SI,1000H ;不带最高位进位的全加器 ????MOV DI,1003H ????MOV BX,1006H ????MOV CX,3 ????CLC AA: MOV AL,[SI] ????ADC AL,[DI] ????MOV [BX],AL PUSHF ;保护FR,这里其实没有必要,因为INC不会产生进位 ????INC SI ????INC DI ????INC BX ????POPF ????LOOP AA ? ????MOV DL,0????????;最高位进位 ????ADC DL,0 ????MOV DI,1009H ????MOV [DI],DL ;============================== ????RET START ENDP CODE ENDS END STT ? ? 实验02B 用串传送指令把A程序的数据块(被加数、加数、和)偏移地址1000H开始的区域传递到同一数据段的偏移地址为1010H开始的区域,并利用DEBUG查看运行结果 程序如下: DATA SEGMENT ORG 1000H H1 DB 20 DUP(?) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START PROC FAR STT:PUSH DS ????SUB AX,AX ????PUSH AX ;============================== ????MOV AX,DS??;使ES段地址与DS相同 ????MOV ES,AX ? MOV SI,1000H ;不带最高位进位的全加器 ????MOV DI,1003H ????MOV BX,1006H ????MOV CX,3 ????CLC AA: MOV AL,[SI] ????ADC AL,[DI] ????MOV [BX],AL PUSHF ;保护FR,这里其实没有必要,因为INC不会产生进位 ????INC SI ????INC DI ????INC BX ????POPF ???

文档评论(0)

xxj1658888 + 关注
实名认证
内容提供者

教师资格证持证人

该用户很懒,什么也没介绍

领域认证该用户于2024年04月12日上传了教师资格证

1亿VIP精品文档

相关文档