微机接口实验-二.pdf

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

实验二 十六进制转BCD 实验 一、 实验目的 1、了解数值十六进制、BCD 码等各种数值表达方法; 2、掌握十六进制转换为BCD 码的原理; 3、学会采用汇编实现数值的转换算法。 二、 实验原理 BCD 码(Binary-Coded Decimal‎)亦称二进码十进数或二-十进制代码。用4 位二进制数来表示1 位十进制数中的0~9 这10 个数码。是一种二进制的数字编 码形式,用二进制编码的十进制代码。BCD 码这种编码形式利用了四个位元来储 存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。 十六进制(英文名称:Hexadecimal),是计算机中数据的一种表示方法。同 我们日常生活中的表示法不一样。它由0-9,A-F 组成,字母不区分大小写。 程序流程图: 三、 实验步骤 1、Proteus 仿真 a.在Proteus 内新建工程,放置8086 CPU,设置CPU 运行内存0xFFFFF; b.在代码编码器内输入汇编程序,,执行编译,运行仿真,进行调试; 2、调试、验证 a.设置断点、单步运行程序; b.观察程序运行时,8086 内部寄存器的数值变化; 参考程序:(注:分号对应汇编的注释,可以不输入) ;将 AX 拆为 5 个 BCD 码,并存入 RESULT 开始的 5 个单元 ;AX=0FFFFH=65535 CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX, DATA MOV DS, AX MOV DX,0000H MOV AX, 65535 MOV CX, 10000 DIV CX MOV RESULT, AL ; 除以 10000, 得万位数 MOV AX,DX MOV DX,0000H MOV CX, 1000 DIV CX MOV RESULT+1, AL ; 除以 1000, 得千位数 MOV AX,DX MOV DX,0000H MOV CX, 100 DIV CX MOV RESULT+2, AL ; 除以 100, 得百位数 MOV AX,DX MOV DX,0000H MOV CX, 10 DIV CX MOV RESULT+3, AL ; 除以 10, 得十位数 MOV RESULT+4, DL ; 得个位数 JMP $ CODE ENDS DATA SEGMENT RESULT Db 5 DUP(?) DATA ENDS END START 四、 实验结果和体会 1、执行完第一次除法,观察寄存器AX、DX 里的值分别是多少 (十进制)?这说 明了除法指令的什么特点? 2、将程序执行到最后,观察内存的变化,写出RESULT 变量储存的5 个数值。

文档评论(0)

138****7331 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档