怎么把一个16进制数转化成对应的ASCII值,这个值只限于0至9《单片机编程》

如题所述

第1个回答  2013-07-03
加上 30H 即可。追问

编译语言呢?按org这种格式写下吧~~?我看看整个程序哦~只是0~9

追答

ORG 0000H

MOV A, #08H ;00H~09H 皆可
ADD A, #30H

END

追问

谢谢,但是我的思路是先判断是不是0到9过后在转化,
如果按这种想法来的话,应该怎么编写啊~~谢谢

追答

判断是不是0到9 ?

可以减去10,有借位的,就是0到9。

MOV A, #NNH ;00H~FFH 皆可
CJNE A, #10, NEXT ;减去10,不等转移
NEXT:

JC TO_ASC
;非0~9,如何处理?

TO_ASC:
ADD A, #30H
;转换完毕,再怎么处理?

END

追问

MOV A, #NNH

CJNE A, #10, NEXT

NEXT:
JC TO_ASC
TO_ASC:
ADD A, #30H
END

怎么有两个NEXT挨着啊啊~?~

追答

CJNE A, #10, NEXT ;减去10,不等,就转移到NEXT

NEXT:----这里是目的地。

追问

#NNH有这个写法吗?我是才学单片机呢 不好意思

追答

MOV A, #00H ;00H~FFH 皆可

看看我的百度空间吧,你这么乱问,太没有头绪了。

单片机,C语言编程将16进制转换为ASC码
16进制数 + '0' = 16进制数对应的ASCII码30H—39H 16进制的A--F,可以类似的变换。

单片机中,如何将16进制转换为ASC码?
1. 16进制数为0~F的组合(例如3FFF, 就像10进制数是0~9的组合一样), 而ASCII码是一组符号集合,它用一个8位(一个字节)的二进制数来表示字符(因为计算机用二进制数来运算), 其中0~9对应的二进制数为0x30~0x39,A~F对应的二进制数为0x41~0x46 (小写a~f为0x61~0x66).2. 将16进制数转...

单片机内容:0~9的ASCII码,编程序怎么数字0编程字符0?
例变量 x 是0~9,变成对应的ASCII码:xa=x+0x30;汇编是:xa=x+30H.RS1,RS0的四种状态,对应的R0-R7的地址:0 ,0 对应00H~07H 0 , 1 对应08H~0FH 1 , 0 对应10H~17H 1 , 1 对应18H~1FH 这是最基本的知识了,教材上都有啊。

51单片机编程,将ASCII码转换为十六进制数
如果是数字的话ASCII码转换为:x-'0'如果是字符的话ASCII码转换为:x-'A'或者x-'a'

单片机中,如何将一个16进制数转为2进制的形式输出 比如a=0x9C,但最 ...
1 将该数据先送入寄存器R4中,如(R4)=0x9C=10011100,2 R4的内容送给(A)3使用带进位的左循环指令 将(A)中内容左移一位送给进位位C,(A)内容送给(R4)保存 4 30H送给(A) 使用 ADDC A,#0 指令 求出要发送的二进制数的第一位数(即30H或31H)5 再返回第二步 继续求出...

ASCII码对应表,ASCII码值的大小顺序
ASCII码表由ASCII值、16进制表示和控制字符三部分组成。每个字符都对应一个特定的ASCII值,例如,大写字母A的ASCII值为65,对应的16进制为41H。控制字符则代表了可以表示的字符。在实际应用中,电脑键盘上的英文输入就是ASCII编码的体现,如数字0-9、大小写字母、符号等。在单片机编程中,ASCII码尤其重要...

C51语言中为什么需要包含头文件
1 等号右边,只能是十进制,十六进制整型的数据常量,,不允许带操作符的表达式 经典的8051内核支持的SFR地址从0x80H~0xFF 飞利浦80C51MX系列0x180H~0x1FF 2 SFR不能声明于任何函数内部,包括main函数。只能声明于函数外。 3 用SFR声明一个变量后,不能用取地址运算符&获取其地址, 编译无法通过,编译器会提示非法操作...

求C语言程序,在单片机中将四位16进制数转化为ASC码,并传给PC机
SCON=0x40; \/\/串口通信控制寄存器 模式一 OutDat=0xaa; \/\/向串口发送固定数据值 for(;;) \/\/循环程序 { SBUF=OutDat;\/\/发送数据 for(;;){ if(TI) \/\/发送中断位 当发送停止位时置1,表示发送完成 break;} mDelay(500);TI=0; \/\/清零中断位 } stm32单片机 首先是配置...

ASCII码对应表,ASCII码值的大小顺序
深入理解ASCII码,它由三个部分组成:ASCII值、十六进制和控制字符。例如,ASCII值65对应大写字母'A',其16进制形式为41H,字符'控制字符A'则实际表示这个大写字母。ASCII的应用无处不在 最直观的应用是我们的键盘,当我们切换到英文输入时,数字0-9、大小写字母A-Z以及特殊符号,都是以ASCII编码...

单片机 十进制数转十六进制后用ASCII码传输的问题
你可以使用查表法莱处理啊,这样就不会出错了:char TAB[]="0123456789ABCDEF";ASCII[0]=TAB[BIN0\/16];ASCII[1]=TAB[BIN0%16];这样多简单!

相似回答
大家正在搜