- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
深 圳 大 学 实 验 报 告
课程名称微型计算机技术项目名称 实验二:简单汇编语言程序设计与调试学 院专 业指导教师报 告 人学号实验时间2015-11-01提交时间2015-11-15教务处制
实验目的与要求
1.1 掌握使用运算类指令编程及调试方法。
1.2 掌握运算类指令对各个状态标志位的影响及其测试方法。
二、实验内容与方法
8086/8088指令系统提供了实现加、减、乘、除运算的基本指令,可对表2-1所示的数据类型进行算术运算。
表 2-1 数据类型算术运算表
数制 二进制BCD码 带符号 无符号 组合 非组合 运算符 +、-、×、÷ +、- +、-、×、÷ 操作数 字节,字,多精度 字节(二位数字) 字节(一位数字) 2.1 二进制双精度加法运算
2.1.1 实验要求:
计算X+Y=Z,将结果Z存入某存储单元。
2.1.2 实验原理:
本实验程序是双精度(2个16位,既32位)运算,利用累加器AX,先求低16位和,并存入低址存储单元,后求高16位和,再存入高址存储单元。由于低位和可能向高位有进位,因而高位字相加语句需要用ADC指令,则低位相加有进位时,CF=1,高位字相加时,同时加上CF中的1。
2.1.3 参考程序清单:
STACK SEGMENT STACKDW 64 DUP(?)
STACK ENDS
DATA SEGMENT
XL DW ?;请在此处给X低位赋值
XH DW ?;请在此处给X高位赋值
YL DW ?;请在此处给Y低位赋值
YH DW ?;请在此处给Y高位赋值
ZL DW ?
ZH DW ?
DATA ENDS
CODE SEGMENTASSUME CS:CODE,DS:DATA
START: MOV AX,DATAMOV DS,AX
MOV AX,XL;X的值送AX
ADD AX,YL;X低位加Y低位
MOV ZL,AX;存低位和
MOV AX,XH;X高位送AX
ADC AX,YH;X高位加Y高位
MOV ZH,AX;存高位和
CODEENDSEND START
2.2 十进制数的BCD码减法运算
2.2.1 实验要求:
计算X-Y=Z,其中X,Y,Z为BCD码。00 04 02 012.2.2 参考实验程序及流程图如下:STACK SEGMENT STACKDW 64 DUP(?)STACK ENDS
DATA SEGMENT
X DW;请在此处给X赋值
Y DW;请在此处给Y赋值
Z DW ?
DATA ENDSCODE SEGMENT
ASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AX
MOV AH,00H
SAHFMOV CX,0002HMOV SI,OFFSET X
MOV DI,OFFSET Z
A1: MOV AL,[SI]
SBB AL,[SI+02H]DASPUSHFAND AL,0FHPOPFMOV [DI],ALINC DIINC SILOOP A1A2: JMP A2
CODE ENDS
END START
2.3 乘法运算
2.3.1实验要求:
本实验实现十进制数的乘法,被乘数和乘数均以BCD码形式存放于内存中,
乘积在屏幕显示。
2.3.2 参考程序清单:
STACK SEGMENT STACK
DW 64 DUP(?)
STACK ENDS
DATA SEGMENT
DATA1 DB 5 DUP(?);乘数
DATA2 DB;被乘数
RESULT DB 6 DUP(?);乘积
DATA ENDS
CODE SEGMENTASSUME CS:CODE,DS:DATA
START: MOV AX,DATAMOV DS,AXCALL INIT
MOV SI,OFFSET DATA2MOV BL,[SI]AND BL,0FHCMP BL,09HJNC ERRORMOV SI,OFFSET DATA1MOV DI,OFFSET RESULT
MOV CX,0005HA1: MOV AL,[SI+04H]AND AL,0FHCMP AL,09HJNC ERROR
DEC SIMUL BL
AAMADD AL,[DI+05H]AAAMOV [DI+05H],ALDEC DIMOV [DI+05H],AHMOV CX,06H
MOV SI,OFFSET RESULT
DISPLAY:MOV AH,01H
MOV AL,[SI]
ADD AL,30H;得到ASCII码
INT 10H;显示
您可能关注的文档
最近下载
- OIE规则和中国进展.ppt VIP
- 疾病预防控制体系建设中存在的问题及建议2025.pdf VIP
- AP微积分BC 2024年真题 附答案和评分标准 AP Calculus BC 2024 Real Exam with Answers and Scoring Guidelines.pdf VIP
- 一种环氧环己烷制备己二腈的方法.pdf VIP
- 标准图集-陕09J05 卫生间、盥洗室及洗池 09系列建筑图集.pdf VIP
- 2024年贵州省中考语文试卷(含答案与解析).pdf VIP
- 1湖南省电网销售电价表-附件1.doc
- 传动设备知识培训课件.pptx VIP
- 起重吊装模块设备设施风险分级管控清单.pdf VIP
- 《城镇给水管道非开挖修复更新工程技术规程 T244-2016》.doc VIP
文档评论(0)