二进制到十进制的转换
时间:2010-11-21
来源:互联网
本人刚刚学汇编
哪位大虾能给我个源代码实现二进制到十进制的转换.....在此先谢过了啊
哪位大虾能给我个源代码实现二进制到十进制的转换.....在此先谢过了啊
作者: fei2008jun 发布时间: 2010-11-21
给你写个流程,自己编程吧,好吗?
CX清零
把要显示的数送(DX,AX) (比如你的例子,1000101011给AX,DX取0)
循环1:
除以10(除数要用字单元)
余数dx(一定小于10)转化为字符(即加30H)后入栈,计数器CX加1
商AX为0吗?是则结束本循环
DX清零;为下一次循环做准备
无条件返回循环1
;至此,已将转化的十进制数,由低位向高位的顺序存入栈内
AH取2 ;为了输出字符
循环2:
DX出栈;DL中正好是由高位向低位取出的十进制数
INT 21H;显示之
LOOP 循环2;把存下的数字全部显示
引用shzhfu的帖子
链接http://topic.csdn.net/u/20101117/12/47481d31-236c-4fd7-8ea6-327087ee4d34.html
CX清零
把要显示的数送(DX,AX) (比如你的例子,1000101011给AX,DX取0)
循环1:
除以10(除数要用字单元)
余数dx(一定小于10)转化为字符(即加30H)后入栈,计数器CX加1
商AX为0吗?是则结束本循环
DX清零;为下一次循环做准备
无条件返回循环1
;至此,已将转化的十进制数,由低位向高位的顺序存入栈内
AH取2 ;为了输出字符
循环2:
DX出栈;DL中正好是由高位向低位取出的十进制数
INT 21H;显示之
LOOP 循环2;把存下的数字全部显示
引用shzhfu的帖子
链接http://topic.csdn.net/u/20101117/12/47481d31-236c-4fd7-8ea6-327087ee4d34.html
作者: znxllyuan 发布时间: 2010-11-22
引用楼主 fei2008jun 的回复:
本人刚刚学汇编
哪位大虾能给我个源代码实现二进制到十进制的转换.....在此先谢过了啊
本人刚刚学汇编
哪位大虾能给我个源代码实现二进制到十进制的转换.....在此先谢过了啊
我的练习,仅供参考:
http://www.asmedu.net/blog/user/postcontent.jsp?neighborId=32262&kindLevel=1&kindId=47796&postId=49321&readSg=1
作者: masmaster 发布时间: 2010-11-22
Assembly code
data segment num db 01Fh data ends stack segment STACK db 256 dup(0) tos label word stack ends code segment assume cs:code,ds:data begin: mov ax,0d mov ax,0dh mov ax,data mov ds,ax mov es,ax mov ax,stack mov ss,ax mov sp,offset tos xor ax,ax mov al,num xor cx,cx ;下面是将cout中的数以十进制显示出来 DoDiv: mov bl,10 div bl ;al←ax/10的商 ;ah←ax/10的余数 push ax ;保存结果 inc cx xor ah,ah ;ah清零,清除余数 cmp al,0 ;判断商是否为零 jnz DoDiv DoPrt: pop dx ;dx中保存的是每次除的结果 xchg dh,dl add dl,30h ;dl中的数字是每次除后的商,将其表示成ascii mov ah,2 int 21h loop DoPrt exit: mov ax,4c00h ;退出DOS int 21h code ends end begin
作者: Zimbu 发布时间: 2010-11-22
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28