微机原理实验 - 二进制到ASCII码转换一、实验目的1. 了解 BCD 值和 ASCII 值的区别。2. 了解如何将 BCD 值转换成 ASCII 值。3. 了解如何查表进行数值转换及快速计算。二、实验原理 ( 实验相关基础知识、理论) ASCII 码 ASCII 码是美国国家信息交换标准字符码(American Standard Code for Information Interchange )的字头缩码。早期的ASCII 码采用 7位二进制代码对字符进行编码。它包括 32个通用控制字符, 10个阿拉伯数字, 52个英文大,小字母, 34个专用符号共128个。7位 ASCII 代码在最高位添加一个“ 0”组成 8位代码,正好占一个字节,在存储和传输信息中,最高位常作为奇偶校验位使用。三、实验用设备仪器及材料:计算机,伟福 Lab2000P 仿真实验箱。四、实验过程 ( 代码、设计调试过程描述等) 内容: 将 AX 拆为二个 ASCII 码, 并存入 Result 开始的二个单元 data segment Result db 2 dup(?) ASCIITab: db "0123456789ABCDEF" ; 定义数字对应的ASCII 表data ends code segment assume cs:code, ds:data start proc near mov ax, data mov ds, ax mov ax, 1ah mov bl, al shr bl, 4 给 出 要 转取 出BCD查 表 得 到 mov bh, 0 mov ah, byte ptr ASCIITab[bx] mov Result, ah and al, 0fh mov bl,al mov ah, byte ptr ASCIITab[bx] mov Result+1,ah jmp $ code ends end start 五、实验步骤(1) 进入 Wave6000,输入程序并检查,保存程序。(2) “编译”程序。(3) 在指令“ jmp $ ”处设断点。(4) “全速执行”程序。(5) 在“数据窗口 (MEMOREY)”查看 0400H、0401H两个单元的内容,记录并分析实验结果。六、实验结果及总结实验结果如下图所示:给出的二进制数为: 1aH , “1”对应的 ASCII 值为31H ,“a”对应的 ASCII 值为 41H,即0400H显示 31H ,0401H显示41H 。