《计算机硬件技术基础》实验解答程序.doc

《计算机硬件技术基础》实验解答程序.doc

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

实验一:简单程序设计实验 (1)编写一个 32 位无符号数除法的程序,要求将存放在 NUM1 中的 32 位无符号数与存放 在 NUM2 中的 16 位无符号数相除,结果存放在 NUM3 和 NUM4 中。 程序流程图略。 参考源程序: DATA SEGMENT NUM1 DD 2A8B7654H NUM2 DW 5ABCH NUM3 DW ? NUM4 DW ? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA ;数据段寄存器初始化 MOV DS,AX MOV AX, WORD PTR NUM1 MOV DX, WORD PTR NUM1+2 DIV NUM2 MOV NUM3,AX MOV NUM4,DX MOV AH,4CH ;正常返回DOS系统 INT 21H CODE ENDS END START (2)编写一个拆字程序。要求将存放在 ARY 单元的 2 位十六进制数 X1X2 拆为 X1 和 X2 两 部分,并以 0X1 和 0X2 的形式分别存入 ARY+1 和 ARY+2 单元中。 程序流程图略。 参考源程序: DATA SEGMENT ARY DB 2AH,?,? DATA ENDS CODE SEGMENT ASSUME DS:DATA, CS:CODE START: MOV AX,DATA MOV DS,AX MOV SI,OFFSET ARY ;取ARY的偏移地址 MOV AL,[SI] ;取16进制数至AL MOV BL,AL AND AL,0F0H ;取16进制数的高四位,即X1 SHR AL,4 MOV [SI+1],AL ;存0X1 MOV AL,BL AND AL,0FH ;取16进制数的低四位,即X2 MOV [SI+2],AL ;存0X2 MOV AH,4CH INT 21H CODE ENDS END START 实验二:分支程序设计实验 (1)编写一个字符比较程序,比较 3 个无符号字节数 A,B,C 的大小,并根据比较结果 对变量 K 赋值: 如果 3 个数不相等,则 K=0; 如果 3 个数中有两个相等,则 K=1; 如果 3 个数都相等,则 K=2。 程序流程图略。 参考源程序: DATA SEGMENT ;定义待比较数A、B、C,比较结果K A DB 20H B DB 20H C DB 20H K DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,A CMP AL,B ;对A、B进行比较,不相等则转到COMP2 JNE COMP2 ;相等则比较A、C CMP AL,C JNE K1 ;A、C不相等则K=1 JMP K2 ;A、C相等则K=2 COMP2: MOV BL,B CMP BL,C JE K1 ;对B、C进行比较,相等则K=1 CMP AL,C JE K1 ;对A、C进行比较,相等则K=1 K0: MOV K,0 JMP EXIT K1: MOV K,1 JMP EXIT K2: MOV K,2 EXIT: MOV AH,4CH INT 21H CODE ENDS END START (2)编写一个能实现下列表达式的程序: ? N = ? A + B A ≤ B  设 A,B,C 为小于 128 的正整数。 ? A ? B + C 程序流程图略。 参考源程序: DATA SEGMENT A B A DB 22H ;定义 A、B、C、N B DB 10H C DB 01H N DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL, A CMP AL, B JG CALCUL ;A 小于或等于 B 则 N=A+B ADD AL,B JMP EXIT CALCUL: SUB AL, B ADC AL, C EXIT: MOV N, AL MOV AH,4CH INT 21H CODE ENDS END START 实验三 循环程序设计实验 (1)将字符串STRN(以“$”结尾)中的每一个字符均加上偶校验位,并统计有多少个字符 因含有奇数个“1”而加上了校验位。统计结果存于N单元中。 程序流程图略。 参考源程序: DATA SEGMENT STRN DB What$ ;任意定义一个字串,以“$”结尾 COUNT EQU $-STRN N DB ? BUF DB COUNT DUP(?) DATA ENDS COD

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档