汇编语言,以10进制的方式显示数字

Posted 式微胡不归

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编语言,以10进制的方式显示数字相关的知识,希望对你有一定的参考价值。

printit proc near
    
    test ax,8000h
    jz p
    neg ax    
    mov cx,ax
    mov dx,2dh
    mov ah,2
    int 21h
    mov ax,cx
    mov dx,0
p:    mov bx ,10
    div bx
    mov bx,dx
    mov dx,ax
    add dx,30h
    mov ah,02h
    int 21h
    mov dx,bx
    add dx,30h
    mov ah,02h
    int 21h
    ret
printit endp

DIV CX这条指令,是DX:AX合起来的32bit数值除以CX的16bit数值,除法的结果必须在16bit内能表示,所以可以得出结论,如果这条指令执行前,DX中的数值比CX还大的话,就会溢出,不论CX是否为0。我估计你的原意是想要做AX除以CX,那么只要先把DX清零就行了。

以上是关于汇编语言,以10进制的方式显示数字的主要内容,如果未能解决你的问题,请参考以下文章

python提供了三种基本的数字类型

C语言转换格式符大全?

16进制字符串如何转化16进制数值

将代码片段插入数据库并在 textarea 中以相同方式显示

C语言如何把11位16进制字符串转成16进制数?

C语言怎么把起始地址输出来,用十进制数字,可以吗,教教我