微机原理==汇编语言编写十进制数到二进制数的进制转换并显示
2016-11-29 20:33
239 查看
不同进制间转换一直是汇编语言必须要掌握的编程技巧,算法也比较简单:
例如:当其他进制数转为十进制时使用的除十取余法,压入栈中,弹出后实现逆序输出;
当其他进制数转为二进制时使用的除二取余法,压入栈中,弹出后实现逆序输出;
进而扩展:当其他进制数转为R进制时使用的除R取余法,压入栈中,弹出后实现逆序输出;
下面介绍一种比较简便的方法,通过移位指令实现的十进制数到二进制数形式的进制转换程序,
程序使用8086宏汇编MASM5.0编译运行通过!
源代码如下:
例如:当其他进制数转为十进制时使用的除十取余法,压入栈中,弹出后实现逆序输出;
当其他进制数转为二进制时使用的除二取余法,压入栈中,弹出后实现逆序输出;
进而扩展:当其他进制数转为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>
相关文章推荐
- 微机原理==汇编语言编写十进制数到二进制数的进制转换并显示(11)
- 微机原理==汇编语言编写十进制数到二进制数的进制转换并显示
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- [OS] 用汇编语言编写一个Boot Sector显示"Hello world!" [李园7舍_404]
- (1-2)编写递归函数将十进制数转换成二进制数输出。
- 十六进制,八进制,十进制数转为二进制数显示的函数
- 第二周实验报告之编写递归函数将十进制数转换成二进制数输出
- 第二周上机任务1-1---编写递归函数将十进制数转换成二进制数输出
- 第二周上机任务1-2---编写递归函数将十进制数转换成二进制数输出
- 第二周上机任务1-1--编写递归函数将十进制数转换成二进制数输出(改进版)
- c++第二周任务一*(1‐1)编写递归函数将十进制数转换成二进制数输出。
- 第二周上机任务1-2--编写循环函数将十进制数转换成二进制数输出
- 汇编语言: 试编制一个程序,把BX寄存器内的二进制数以十进制数的形式在屏幕上显示出来。
- C++第二周任务一*(1‐2)编写自定义函数将十进制数转换成二进制数输出。
- 第二周实验报告1:编写递归函数将十进制数转化成二进制数
- 汇编语言: 试编写一段程序,从键盘接收一个 0-65535 间的十进制无符号数,并在终端上显示与 它等值的二进制数。
- 汇编语言: 试编写一段程序,从键盘接收一个-32768-32767 间的十进制有符号数,并在终端上 显示与它等值的二进制数。
- 编写递归函数将十进制数转换成二进制数输出