我是靠谱客的博主 追寻紫菜,最近开发中收集的这篇文章主要介绍= 问题 = 请问如何把16进制数转化为10进制数显示输出?谢谢! ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 = 问题 =
  请问如何把16进制数转化为10进制数显示输出?谢谢! 
 

--------------------------------------------------------------------------------
  16进制数在内存INPUT处,使用大写字母,结果在OUTPUT中 
最大为双字 
大致如下: 

input  db  "23AF ",0 
w1     dw 1 
w2     dw 0 
output db 20 dup(0) 

    xor ax,ax 
    mov si,offset input 
    call h_to_b 
    mov di,offset output 
    mov cx,10 
    call b_to_d 
    xor ax,ax 
    stosb 

h_to_b: 
    lodsb 
    push ax 
    or ax,ax 
    jz b03 
    call h_to_b 
    pop cx 
    cmp cl, "9 " 
    ja b01 
    sub cx, "0 " 
    jmp b02 
b01:sub cx, "A " 
b02:mov ax,w2 
    mul cx 
    mov w2,ax 
    mov ax,w1 
    mul cx 
    mov w1,ax 
    add w2,dx 
b03:ret 

b_to_d: 
    mov ax,w2 
    xor dx,dx 
    div cx 
    mov w2,dx 
    mov dx,ax 
    mov ax,w1 
    div cx 
    mov w1,ax 
    or ax,dx 
    jz w11 
    push dx 
    call b_to_d 
    pop ax 
    add ax,030h 
    stosb 
w11: 
    ret
 
 

最后

以上就是追寻紫菜为你收集整理的= 问题 = 请问如何把16进制数转化为10进制数显示输出?谢谢! 的全部内容,希望文章能够帮你解决= 问题 = 请问如何把16进制数转化为10进制数显示输出?谢谢! 所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(57)

评论列表共有 0 条评论

立即
投稿
返回
顶部