用汇编语言编程 片内RAM中20H开始单元,连续存放 10个非压缩bcd码 ,将其转换成为ASCII码,存放到片内50H开始单元中
用汇编语言编程 10个非压缩bcd码 转换成为ASCII码
非压缩bcd码转换成为ASCII码,只要加30H 20H单元转换成为ASCII放到片内50H MOV A,#30H ADDC A 20H MOV 50H,A 21H单元转换成为ASCII放到片内51H MOV A,#30H ADDC A 21H MOV 51H,A 你可以用循环10次编
用汇编,将BCD数据区中的一组非压缩BCD码转换成对应的ASCⅡ码,并将其依...
这个很简单啊,把这些非压缩BCD码的低四位和30H相或,不就得到相应的ASCII码了嘛!程序如下:dseg segment bcd db 02h,04h,01h,08h cnt dw 4 ascii db 4 dup(?)dseg ends cseg segment assume cs:cseg,ds:dseg begin:mov ax,dseg mov ds,ax lea si...
汇编语言的非压缩\/压缩十进制码转换程序
ANL DL,0FH;强制一下,使06H变成06H,考虑到赋值出错的情况 OR DL,DH;将DL和DH合并,即50H和06H执行或操作,结果为56H MOV BYTE PTR number,DL;将结果存入number的低字节
BCD怎样转换成ASCII
非压缩的BCD码,与ASCII码差30H.如MOV 00H,#12H(BCD)MOV A ,00H ANL A,0FH ADD A,30H MOV 01H,A MOV A,00H SWEP A ANL A,0FH ADD A,30H MOV 02H,A 这样就把在00H中的BCD码转换成ASCII码放在01H,02H中
如何用汇编语言实现将非压缩BCD码转换成对应的压缩BCD码?
可以这样:将其高低八位分别移入8位寄存器,高八位移入的寄存器逻辑左移4位,后与低八位移入的寄存器相或,将高八位寄存器赋给原来的寄存器或存储器中;例如:MOV CL,4 MOV AX,0506h SHL AH,CL OR AH,AL;高低八位寄存器相或,得AH=(0101 0110)B 得到AX的对应的BCD码在AH中。参考资料...
BCD码转换成ASCII值
voidWhAsciiToBcd(unsignedchar*psDataIn,size_tuiDataInLen,unsignedchar*psDataOut){ unsignedcharucTemp=0;for(size_ti=0;i<uiDataInLen;i+=2){ ucTemp=psDataIn[i];if(ucTemp>'9'){ ucTemp=(unsignedchar)toupper((unsignedchar)ucTemp)-'A'+0x0A;}else{ ucTemp&=0x0F;} psData...
如何用汇编语言将BCD码96H转换成2个字节的ASCII码?
如十进制数96表示成压缩BCD码就是96H,转换成ASCII码就是压缩BCD码表示的十进制数的高位和低位分开,以ASCII码表示,即转换成39H和36H。汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替...
汇编ASCII码到十进制(BCD)的转换
第(1)空中,当CX为奇数时,要将地址最低的ASCII码即第一个ASCII码按照非组合BCD码格式转换,即一个字节只存第一个的BCD码。所以只需将AL的高四位屏蔽掉,再用STOSB指令将AL存储到DI中。EVN段,当ASCII码字符个数CX为偶数时,接连取两个数,将前一个数AL(如34H)的高四位屏蔽掉,并赋值给...
汇编问题,“将一字节压缩bcd码转换成两个asc2码
ASC码是一种字符编码,它是用7位二进制来表示数字,字符,及一些控制符号,其规律是0的ASC吗是30H,9的ASC吗是39H,压缩的BCD 码是一个字节表示2位BCD码,就如题中的9 和6,即为2位BCD码,把9的BCD码转换成ASC码即为39,6的BCD码转换成ASC码即为36 ...