;HtoD

 data segment
n dw ?
data ends stack segment
db dup(?)
stack ends code segment
assume cs:code,ss:stack,ds:data
start:mov ax,stack
mov ss,ax
mov sp,
mov ax,data
mov ds,ax mov si,
mov di,
mov bx,
mov cx,
;input the number which is lower than 6,5536,0000(65536(high)*10000(low))
s:mov ah,
int 21h
cmp al,0dh ;when input '\n',quit
jz t
sub al,30h
mov ah,
mov ds:[],ax
;high part
mov ax,bx
mul si
mov bx,ax
;low part
mov ax,cx
mul si ;ax*10=dx_a
div di ;can't div 10000h(0000h~FFFFh) =ax(Shang)...dx(Yu) add bx,ax ;high part
mov cx,dx ;low part
add cx,ds:[] ;it won't JinWei , because
;dx_ax=ax*10 , the last character of dx_ax value 0 ,
;dx=dx_ax%10000 , the last character of dx is 0 ,
;dx=dx+ds:[0](0~9) , the last character won't JinWei ,
;thus cx won't JinWei
jmp s
t:mov ax,cx
mov dx,bx cmp dx,
jnz HtoD_dword
call HtoD_word exit:mov ah,4ch
int 21h HtoD_word:
mov bx, ;division
mov cx,
mov dx, ;high part(dx_ax<10000)
u:div bx
push dx
mov dx,
inc cx
cmp ax,
jnz u mov ah,
v:pop dx ;dx<10
add dl,30h ;0->48 48
int 21h
loop v ret HtoD_dword:
push ax ;store low part
mov ax,dx
call HtoD_word
;output '0'(low part must contain four character)
pop bx ;bx=low part
mov ah,
mov dl,''
cmp bx,
ja w
int 21h
cmp bx,
ja w
int 21h
cmp bx,
ja w
int 21h w:mov ax,bx ;ax=low part
call HtoD_word jmp exit code ends
end start ;mov ax,432
;call HtoD_word ;mov ax,0
;mov dx,1
;call HtoD_dword

输入一个十进制的数到dx_ax,然后十六进制转十进制输出的更多相关文章

  1. 20150912华为机考1之"输入一个字符串,将其中出现次数最多的字符输出"

    不吐槽华为的服务器了,直接上正文 输入:字符串(英文字母),长度不超过128 输出:出现频率最高的字母 思路写在注释文档 /* Input a string * Output the most fre ...

  2. C语言,输入一个正整数,按由大到小的顺序输出它的所有质数的因子(如180=5*3*3*2*2)

    #include <iostream> using namespace std; int main() { long num; while(cin >> num){ ){ co ...

  3. C++输入一个字符串,把其中的字符按照逆序输出的两种方法

    用字符数组方法: 基本思路是,先判断字符的结束标志'\0',然后从该位置向前输出. 实现代码: #include<iostream> using namespace std; int ma ...

  4. PHP:第一章——PHP中十进制、二进制、八进制、十六进制转换

    //十进制.二进制.八进制.十六进制转换 //十进制转换为二进制decbin()函数: //echo decbin(5);//输出:101 //十进制转换为八进制decoct()函数 //echo d ...

  5. 输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数

    题目:输入一个整数n,求从1到n这n个整数的十进制表示中1出现的次数.例如输入12,从1到12这些整数中包含1 的数字有1,10,11和12,1一共出现了5次. 分析:首先最先想到的是遍历从1到n的每 ...

  6. java语言将任意一个十进制数数字转换为二进制形式,并输出转换后的结果

    package com.llh.demo; import java.util.Scanner; /** * * @author llh * */ public class Test { /* * 将任 ...

  7. 17.从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式, 输出杨辉三角形的前n行。请采用循环控制语句来实现。 (三角形腰上的数为1,其他位置的数为其上一行相邻两个数之和。) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1

    17.从键盘上输入一个正整数n,请按照以下五行杨辉三角形的显示方式, 输出杨辉三角形的前n行.请采用循环控制语句来实现. (三角形腰上的数为1,其他位置的数为其上一行相邻两个数之和.) 1 1 1 1 ...

  8. PYTHON练习题 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数。

    Python 练习 标签: Python Python练习题 Python知识点 二. 使用random中的randint函数随机生成一个1~100之间的预设整数让用户键盘输入所猜的数,如果大于预设的 ...

  9. 输入一个秒数,要求转换为XX小时XX分XX秒的格式输出出来;

    package arithmetic; import java.util.Scanner; import org.junit.Test; public class Test02 { /** * 输入一 ...

随机推荐

  1. W25Q128---读写

    占坑! 总结:通信方式是SPI,读数据可以从任何地方读,写数据和擦出数据需要按照页或者扇区或者簇为单位进行. 写数据:一次最多写一页,如果超出一页数据长度,则分几次完成.例如本芯片一个扇区为4096个 ...

  2. Codeforces 955C Sad powers (数论)

    题目链接:Sad powers 题意:给出n个l和r,求出每个给出的[l,r]之间的可以使是另外一个数的k次方的数.(k>=2) 题解:题目给出的数据范围最大是1E18所以如果要直接把所有的从1 ...

  3. service手动实例化(new)导致类中的spring对象无法注入的问题解决

    下面说的这个画横线的可能是错误的,因为我之前用controller继承父类的注解对象的时候成功了,所以可能这次的唯一原因就是 不该把本该从ioc容器中拿出的对象通过new的方式实例化,至于继承注解对象 ...

  4. Java和C#基本类库的区别

    java.lang java .net Boolean System.Boolean Byte System. Byte Character System.Char Class System.Type ...

  5. python3 subprocess模块

    当我们在执行python程序的时候想要执行系统shell可以使用subprocess,这时可以新起一个进程来执行系统的shell命令,python3常用的有subprocess.run()和subpr ...

  6. 记录:Ubuntu 18.04 安装 tensorflow-gpu 版本

    狠下心来重新装了系统,探索一下 gpu 版本的安装.比较令人可喜的是,跟着前辈们的经验,还是让我给安装成功了.由于我是新装的系统,就像婴儿般纯净,所以进入系统的第一步就是安装 cuda,只要这个不出错 ...

  7. 32bit 天堂2脚本修改资料大全【客户端+服务端】

    该资料夹中所有教程资料全部适合天堂2初章32位服务端的脚本修改,已经1.2章相关客户端的修改. https://pan.baidu.com/s/1RuGMFNgERd2JMYQpdceQwg 提取码: ...

  8. Go实现Pow工作量证明

    之前使用python编写了一段代码实现了工作量证明机制,近期由于参与以太坊智能合约开发钱包的工作接触到golang语言,所以借此以go来实现Pow(Proof of work). 实现代码如下: // ...

  9. 关于github的使用心得

    https://github.com/JavaLizheng/test git常用命令: git config :配置git git add:更新working directory中的文件至stagi ...

  10. 派生类&简单工厂模式

    派生类&简单工厂模式 git链接: Operation3.1.1 题目描述的代码部分的解释 首先是声明一个Rand类作为父类,然后两个子类RandNumber类和RandOperation类, ...