汇编怎么把字符串的ASCII码值的最大值以16进制输出

汇编怎么把字符串转换为ASCII码,把其最大值以16进制输出。。。十分感谢!

输入的字符串本身就是ASCII码,存放的,不需要转换。ASCII的输出可以如下:assume cs:code,ds:data
data segment
da1 db 100
db ?
da2 db 100 dup (?)
data ends
code segment
start:
mov ax,data
mov ds,ax

lea dx,da1 ;输入字符串
mov ah,0ah
int 21h

mov dl,10 ;换行
mov ah,2
int 21h

lea bx,da2
mov dl,[bx] ;指向第一个字符
mov cl,da2-1 ;设置循环次数
xor ch,ch
dec cx
s:

cmp dl,[bx]+1
jae next
mov dl,[bx]+1
next:
inc bx
loop s

mov cl,4
shr dl,cl ;右移4位
add dl,30h
cmp dl,'9' ;判断是否大于9
jbe next1 ;小于或等于,以数字输出
add dl,7 ;大于,以字母输出
next1:
mov ah,2 ;输出第一个字符
int 21h

mov dl,[bx]
and dl,0fh ;高4位置0
add dl,30h
cmp dl,'9' ;同第一个字符
jbe next2
add dl,7
next2:
mov ah,2 ;输出第二个字符
int 21h

mov ax,4c00h
int 21h
code ends
end start
温馨提示:内容为网友见解,仅供参考
无其他回答

汇编怎么把字符串的ASCII码值的最大值以16进制输出
cmp dl,'9' ;判断是否大于9 jbe next1 ;小于或等于,以数字输出 add dl,7 ;大于,以字母输出 next1:mov ah,2 ;输出第一个字符 int 21h mov dl,[bx]and dl,0fh ;高4位置0 add dl,30h cmp dl,'9' ;同第一个字符 jbe next2 add dl,7 next2:mov ah,2 ;...

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

字符串怎么转化为16进制
答案:将字符串转换为16进制数,可以通过以下步骤实现:1. 将字符串中的每个字符转换为其对应的ASCII码值。2. 将每个ASCII码值转换为16进制形式。3. 拼接所有的16进制数值,形成完整的16进制表示。详细解释:字符串是由字符组成的,每个字符在计算机内部都对应一个唯一的ASCII码值。为了将字符串转换为1...

如何将字符转换为16进制数值
首先,定义一个字符串变量char和asc,保存转换的字符和转换后的16进制数。定义一个整型变量n,保存字符的ASCII码。给字符char赋值,其值为字符i。将字符char转换为ASCII码,并保存在n中。字符的ASCII码,进一步转换为16进制数,并保存在变量asc中。最后,输出字符转换为16进制数后的数值。运行程序,代码...

汇编 计算机如果输出16进制
那么,由数字转换到ASCII的过程,就简单多了。需要改动的,仅仅是一个数字,看下面吧:……int 21h;输出提示语string2 mov al,result mov ah,0;被除数放到ax mov bl,10;除数放到BL---这里的10,改成16,就完了。……其它都不用变,就可以按照16进制输出了。=== 如果,要求输出的数字里面...

汇编语言,把ASC码转换为十六进制数,能帮我解释一下这个两句指令的含义...
16 进制数,共有 16 个数字,分别是:0~9、A~F。把数字变成 ASCII 码时,0~9,只要加上 30H,得到 30H~39H。A~F,却要加上 37H,得到 41H~46H。查 ASCII 码表,即可知道这个规律。反过来变,就是减去 30 或 37H。楼主的程序,是针对 'A'~'F',先减去7,再 和 '0'~'9' 一起...

如何将ASCII码转成16进制的数字?
char a;int b;1. b=a\/16*10+a%16; printf("0x%d",b);2. printf("%x",a);

汇编语言输出ASCII值
mov bx,ax;将字符的ASCII存入BX mov num,bx;防止值改变存入num中为转换二进制准备 call crlf;回车换行子程序 lea dx,str2 mov ah,09h int 21h call transform;转换为16进制子程序子程序 mov dl,'H'mov ah,02h int 21h call crlf ;转换为二进制 lea dx,str3 mov ah,09h int 21h mov ...

汇编语言问题,输入4位ASCLL码转换成4位16进制数,并在屏幕上显示出来...
因为数字0到9对应ASCII码中的30到39,A到F对应ASCII码中的41到46。所以程序如下(假设转换ASCII码38到十六进制数8):MOV AX,38H CMP AX,39H ;比较是大于9还是小于9的数 JA NEXT ;若是大于则转移到NEXT SUB AX,30H ;若小于就直接转换 MOV BX,AX ;结果存于BX中 NEXT:SUB AX,37H MOV BX...

用汇编怎么将16进制转ASCII码?
1. 首先,我们需要了解16进制数`1aH`转换为ASCII码的过程。2. 在汇编语言中,大写字母`A`到`F`对应的ASCII码值分别是`31h`到`36h`,小写字母`a`到`f`对应的ASCII码值分别是`61h`到`66h`。3. 因此,16进制数`1aH`转换为ASCII码值是`31h`和`41h`。4. 具体的计算过程是:如果16进制...

相似回答