微机原理==汇编语言编写十进制数到二进制数的进制转换并显示

来源:互联网 发布:怎样找淘宝客服投诉 编辑:程序博客网 时间:2024/09/21 09:22

不同进制间转换一直是汇编语言必须要掌握的编程技巧,算法也比较简单: 
例如:当其他进制数转为十进制时使用的除十取余法,压入栈中,弹出后实现逆序输出; 
当其他进制数转为二进制时使用的除二取余法,压入栈中,弹出后实现逆序输出; 
进而扩展:当其他进制数转为R进制时使用的除R取余法,压入栈中,弹出后实现逆序输出; 
下面介绍一种比较简便的方法,通过移位指令实现的十进制数到二进制数形式的进制转换程序, 
程序使用8086宏汇编MASM5.0编译运行通过! 
源代码如下:

<span style="font-family:SimSun;font-size:18px;">assume cs:code    code segment    ;主程序    start:        mov al,74h       call binary       mov ax,4c00h       int 21h    ;子程序    ;功能:通过移位和带进位加法实现的将al中的内容以二进制形式显示    ;入口参数:al    ;出口参数:无    binary proc near       push bx       push cx       push dx  ;保护现场       mov bl,al       mov cx,8 ;循环8次    s: mov dl,30h          shl bl,1       adc dl,0       mov ah,2 ;调用DOS功能调用,显示'0'或'1'       int 21h       loop s       pop dx   ;恢复现场       pop cx       pop bx       ret    binary endp    code ends    end start</span>
0 0
原创粉丝点击