实验说明

格雷码和二进制的转换

思路

为完成实验内容,可通过查表和格雷码计算两种方式完成,此处使用格雷码直接计算得出结果。
SHL算术左移命令可将二进制数的高位存入CF,直接得出高位数据,通过异或操作从高位到低位逐位循环8次解出二进制数,最后加上30H即为对应的ASCII码。

汇编代码

DATA SEGMENT
GRA DB ?
BIN DB ?
DATA ENDSCODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:MOV AX,DATAMOV DS,AXMOV GRA,1101bMOV BIN,0MOV BL,00h          ;record binMOV DL,00h           ;record last gray bitMOV CX,8MOV AL,GRA
A1:SHL BL,1SHL AL,1MOV DH,0ADC DH,0         ;assgin DH = CF XOR DL,DHADD BL,DLLOOP A1ADD BL,30hMOV BIN,BLMOV AH,0INT 21h
CODE ENDS
END START

流程图

调试检验

通过MOV GRA,1101b指令设定格雷码的初值。

通过-u命令查看所需的程序结尾断点的地址 076F:0031 CD21 INT 21

通过-g 0031调试命令直接运行到程序结尾,可以看到BX=0039,对应了1101格雷码的ASCII码,调试验证成功。

汇编实验:格雷码转二进制(ASCII码)的实现和调试相关推荐

  1. 在标准ASCII码表中,已知英文字母K的十六进制码值是4B,则二进制ASCII码1001000对应的字符是( )

    在标准ASCII码表中,已知英文字母K的十六进制码值是4B,则二进制ASCII码1001000对应的字符是( ). A. G B. H C. I D. J 提示:答案B 解析:K的十六进制4B转换成二 ...

  2. 26个英文字母如何转换为二进制ASCII码

    首先我们要知道26个英文字母实际上对应着97-122这26个十进制数字,也就是对应的ASCII码,然后我们把他们转换为二进制前面加0就可以了. #include<stdio.h>int m ...

  3. php中文ascii码范围,标准ascii码字符集共有几个编码?

    标准ascii码字符集共有128个编码.标准ASCII码是用7个二进制位表示1个字符,由于2的7次方为128,所以标准ASCII码字符集共有编码128个:而每一个编码代表一个基本符号,也就是说,使用A ...

  4. php中的字符串常用函数(四) ord() 获得字符的ascii码 chr()获取ascii码对应的字符...

    ord('a');//=>97 返回小写a 的ascii码值97 chr(97);//=>a 返回ascii码表上的97对应的 小写a 转载于:https://www.cnblogs.co ...

  5. python汉字转到ascii码_python中ASCII码字符与int之间的转换方法

    ASCII码转换为int:ord('A') 65 int转为ASCII码:chr(65) 'A' 题目内容: 实现一个凯撒密码的变种算法,对输入字符串进行加解密处理 把字母a-z分别循环对应为相距13 ...

  6. php 获取ascii码,PHP实现ASCII码与字符串相互转换的方法

    class ascii { /** * 将ascii码转为字符串 * @param type $str 要解码的字符串 * @param type $prefix 前缀,默认: * @return t ...

  7. c语言ascall码英文字母,ASCII码对照表-C语言.pdf

    ASCII码对照表 - Linux/Unix编程 - 工作中用到的东西 ASCII码对照表 ASCII码对照表 ASCII, American Standard Code for Informatio ...

  8. c语言中ascii码72表示,ASCII码对照表

    ASCII码的取值范围是0~127,可以用7个bit表示.C语言中char型变量的大小规定为一字节,如果存放ASCII码则只用到低7位,高位为0.以下是ASCII码表: 图 A.1. ASCII码表 ...

  9. 【51单片机汇编】将30H-34H单元中的压缩BCD码转化为ASCII码,并存入60H-69H

    BCD转ASCII,如BCD码24H,转成ASCII应为34H和32H,即,将BCD的低高位分别提取出来加上30H就能转换为ASCII ;BCD转ASCIIORG 0000HMOV 30H, #25H ...

  10. 本地码转换至ASCII码工具-native2ascii

    在Java自带的工具有一个用于将本地编码的文本文件转换为ASCII码文件的工具,在某些情况下(例如,java源文件在不同系统平台下编译,含中文字符的资源文件处理等)会用到它,在这里总结一下,供各位参考 ...

最新文章

  1. 回顾2009,展望2010。
  2. Matlab与线性代数 -- 矩阵的右除
  3. 跨站访问如何保证session的正常使用
  4. GD32的flash读、擦除、写操作
  5. 预训练模型需要知道的知识点总结,万字长文带你深入学习(建议收藏)
  6. vue 动态组件名_vue动态加载组件mounted无法获取dom的解决思路
  7. 熟读《阿里巴巴java开发手册》(三、单元测试,四、安全规约)
  8. 乐鑫代理-启明云端分享ESP32系列教程之二:Linux搭建esp-idf环境
  9. linux汇编字符长怎么看,linux – 在内联GNU汇编程序中获取字符串长...
  10. sql 百分号_SQL思维导图和代码分享
  11. 力扣35.搜索插入位置
  12. html实现返回上一页的几种方法(javaScript:history.go(-1);)
  13. ecmall ajax,ajax
  14. POJ 2989 All Friends
  15. AD域验证DirectoryEntry用法
  16. vue项目运行后自动打开浏览器
  17. java中|和||的使用和区别
  18. nals\string-trim.js Replace Autoprefixer browsers option to Browserslist config. Use browserslis
  19. word必备快捷键使用
  20. Python 鸡兔同笼

热门文章

  1. UE4 局域网联机案例
  2. 7 种常用的数据挖掘技术分享
  3. Eclipse插件的8种安装方式
  4. 微信开发者导入微信小程序项目
  5. composer install 出现的问题
  6. SpringBoot接口开发流程
  7. 在pycharm用python画图:matplotlib
  8. 数据中心暖通系统建设交付关键路径分析
  9. VMware Horizon 8 2111 部署系列(五)配置事件数据库
  10. Matlab中将行向量转为列向量的方法