文档详情

《微机系统与接口技术》实验报告.doc

发布:2017-04-18约3.45千字共5页下载文档
文本预览下载声明
《微机系统与接口技术》 实 验 报 告 学 院: 计算机学院 专 业: 信息安全 班级学号: 学生姓名: 邓修建 实验日期: 2014/7/3 指导老师: 李鹤喜 五邑大学计算机学院制表 实 验 三 实验名称:汇编语言程序设计(3) 实验目的: 理解二进制转换为BCD的基本原理; 掌握二进制转换为BCD码的程序设计方法; 实验内容: 设计两字节二进制→BCD码转换子程序B_BCD, 入口:Binary(二进制数),出口:BUFFER(非压缩BCD码); 设计实验主程序调用这个B_BCD子程序; 将转换的非压缩型BCD码转换成ASCII码,存入显示缓冲区并调用INT 21的9号功能进行转换结果显示。 实验设备: PC微型计算机 实验步骤: 进入QASM汇编语言开???环境,开始汇编程序设计; 设计“字符串显示程序”,调试并在屏幕自己的“班级”、“学号”及“名字”的拼音字母; 设计“十六进制转换为ASCII码子程序”,在主程序中将自己的“班号学号”定义成十六进制 数 ,然后调用这个子程序,并在屏幕上显示结果; 设计一个“二进制转换为BCD码子程序”,在主程序中将自己的“班级号+学号”先转换为十六进制数,定义成4位十六进制数,然后调用这个子程序转换为BCD码并在屏幕上显示运行结果。 实验结果 编制并调试通过的80X86汇编程序代码如下: ;二进制转换成 BCD码 DATA SEGMENT BINARY DW 1FBH ;此处定义了05班 07号同学的二进制数 WSTR DB THis ia a Binary-BCD convertion program,0AH,0DH,0AH,$ BUFFER DB 00000$ DATA ENDS STACKS SEGMENT DB 100 DUP(?) ;此处输入堆栈段代码 STACKS ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA ;SS:STACKS START PROC MOV AX,DATA MOV DS,AX ;此处输入代码段代码 LEA DX, WSTR MOV AH,09 INT 21H MOV BX, BINARY CALL B_BCD MOV BX, OFFSET BUFFER MOV CX ,05 LAB: MOV AL,[BX] ;非压缩BCD码转换 ASCII ADD AL,30H MOV [BX],AL INC BX LOOP LAB MOV DX, OFFSET BUFFER ;显示转换的十进制结果 MOV AH,09 INT 21H MOV AH,07H INT 21H MOV AX,4C00H INT 21H START ENDP ;16位二进制数转换为BCD码子程序 B_BCD PROC MOV DI, OFFSET BUFFER MOV DL,0 ; T1:
显示全部
相似文档