找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1284|回复: 0
打印 上一主题 下一主题
收起左侧

格雷码转换为二进制码_51单片机汇编语言子程序

[复制链接]
跳转到指定楼层
楼主

卡诺图是组合逻辑电路设计和分析最常用和有效的数学工具,
    格雷码是特点是任意两相邻代码之间只有一位数不同,其余各位均相同,正好和卡诺图循环邻接特点一致。
    格雷码转换为二进制码的51单片机汇编语言子程序如下:
;;入口:8位格雷码存于累加器A,
;;返回值:转换所得8位二进制码仍存于累加器A。
GtoB:   MOV   R5,   #8    ;;R5←循环次数
        MOV   22H,  A     ;;原格雷码送至RAM的22H单元暂存
LP1:    RLC   A           ;;A带进位左移
        MOV   23H,  A     ;;RAM的23H单元←(A)
        MOV   A,    22H   ;;A←(22H)
        RLC   A           ;;A带进位左移
        MOV   22H,  A     ;;22H←(A)
        MOV   A,    23H   ;;A←(23H)
        JNB   10,   LP2   ;;若22H单元的最低位≠1,则不取反
        CPL   ACC.7       ;;否则取反
LP2:    DJNZ  R5,   LP1   ;;若剩余次数递减至零,则处理下一位
        MOV   A,    22H   ;;A←结果
        RET

格雷码与二进制码对照表:



评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表