王爽汇编语言实验十

实验十 3.数值显示(以下程序附带测试程序)

  1 ;名称: dtoc
  2 ;功能: 将dword型数据转变为表示十进制数的字符串,字符串以0为结尾
  3 ;参数: (ax)=dword型数据低字
  4 ;               (dx)=dword型数据高字
  5 ;      ds:si指向字符串的首地址
  6 ;返回: 无
  7 assume cs:code
  8 data segment
  9           haha dd 4294967295
 10           tata dd 16 dup(?)
 11 data ends  
 12 code segment
 13 main:
 14     mov ax,data
 15     mov ds,ax
 16     mov si,offset haha
 17     mov ax,[si]
 18     add si,2
 19     mov dx,[si]
 20     mov si,offset tata
 21     call dtoc
 22     mov dh,12
 23     mov dl,30
 24     mov cl,1
 25     mov si,offset tata
 26     call show_str
 27     mov ax,4c00h
 28     int 21h
 29          
 30 dtoc:
 31     push bx
 32     push cx
 33     push si
 34     mov  bx,0      ;bx 用于记录最终的位数
 35 r:    
 36     mov cx,10
 37     call divdw
 38     push cx                    ;计算余数,商,余数保存入栈
 39     inc  bx        ;位数增加
 40     
 41     cmp dx,0
 42     jnz next
 43     cmp ax,0                   
 44     jz  ok                    ;商为0,则跳出r循环
 45 next:
 46     jmp r
 47 ok: mov cx,bx
 48 s:  pop ax
 49     add al,30h
 50     mov [si],al
 51     inc si
 52     loop s
 53     mov byte ptr [si],0
 54     pop cx
 55     pop bx
 56     pop si
 57     ret
 58                         
 59 divdw:
 60     push bx 
 61     mov bx,ax
 62     mov ax,dx
 63     mov dx,0
 64     div cx
 65     push ax   ;将int(H/N)入栈
 66     mov ax,bx
 67     div cx    ;[rem(H/N)*65536+L]/N结果商放在dx中,余数放在ax中
 68     mov cx,dx
 69     pop dx
 70     pop bx
 71     ret
 72 
 73 show_str:
 74     push cx
 75     push bx
 76     push ax
 77     push dx
 78     push ds
 79     push es
 80     push di     ;将要使用到的寄存器入栈
 81 
 82     mov ax,0b800h
 83     mov es,ax
 84     mov al,160
 85     mul dh
 86     mov bx,ax    ;基址赋值
 87     mov al,2
 88     mul dl
 89     mov di,ax    ;变址赋值
 90                   
 91 read:         
 92     mov ch,[si]
 93     cmp ch,0        
 94     jz  ok2      ;判断是否遇到字符串尾端
 95                   
 96     mov ah,cl 
 97     mov al,[si]
 98     mov es:[bx+di],ax
 99     inc di
100     inc di       ;指向下一个屏幕显示位置
101     inc si               ;指向下一个字符
102     jmp read
103 ok2:    
104     pop di
105     pop es
106     pop ds
107     pop dx
108     pop ax
109     pop bx
110     pop cx               ;使用到的寄存器出栈
111     ret
112          
113 code ends
114           end main

 

转载于:https://www.cnblogs.com/linyuzhaozhao/p/4172792.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/459796.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF01(xaml)

XAML&#xff1a;&#xff08;转自http://www.cnblogs.com/huangxincheng/archive/2012/06/17/2552511.html&#xff09; <Window x:Class"WpfApplication1.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"…

android源码包下载

http://rgruet.free.fr/public/其他下载地址&#xff1a;http://cid-b50f9d5897331c44.office.live.com/browse.aspx/Android技术群共享/source code 转载于:https://www.cnblogs.com/liangxiaofeng/p/4173340.html

java 线程 状态 图_Java提高——多线程(一)状态图

操作系统中的进程和线程的概念进程是指一个内存运行的应用程序&#xff0c;每个进程都有自己独立的一块内存空间&#xff0c;一个进程中可以启动多个线程&#xff0c;比如windows下的一个运行的应用程序.exe就是一个进程。线程是指进程中的一个执行流&#xff0c;一个进程可以运…

UITableView 重用cell方法edequeueReusableCellWithIdentifier,出现错误

UITableView 使用重用cell方法edequeueReusableCellWithIdentifier&#xff0c;出现错误&#xff1a;*** Terminating app due to uncaught exception NSInternalInconsistencyException, reason: unable to dequeue a cell with identifier cell3 - must register a nib or a …

学习ecshop 教程网址

http://www.chinab4c.com&#xff08;中国B4C电子商务&#xff09;转载于:https://www.cnblogs.com/ymj0906/p/4175681.html

幽幽的灵光射不出你想要的疯狂

秋天到了&#xff0c;忧伤便无处可逃&#xff0c;秋天的忧伤的气息&#xff0c;就像一个妖艳的美女躺在你的身边&#xff0c;让你热血沸腾&#xff0c;冲动无比&#xff0c;而又悲喜交加&#xff0c;忧愁满地。如果不信&#xff0c;你可以试试。分享一首去年的诗歌&#xff0c;…

java 复杂 sql_复杂的SQL条件

概述什么是 Nutz.Dao 中的复杂SQL条件对于 Nutz.Dao 来说&#xff0c;它本质上就是将你的 Java 对象转化成 SQL&#xff0c;然后交给 JDBC 去执行。而 SQL 中&#xff0c;当执行数据删除和查询操作时&#xff0c;最常用的就是 WHERE 关键字。WHERE 关键字后面的就是所谓的复杂查…

找规律

找规律填写NN方阵。如N8时, 其方阵为: 1 1 1 1 1 1 1 11 2 2 2 2 2 2 11 2 3 3 3 3 2 11 2 3 4 4 3 2 11 2 3 4 4 3 2 11 2 3 3 3 3 2 11 2 2 2 2 2 2 11 1 1 1 1 1 1 1 上代码&#xff1a; 1 #include <stdio.h&g…

arm qt5 iconv 问题

2019独角兽企业重金招聘Python工程师标准>>> 问题 3&#xff1a;./system/rootlib/helloworld -qws &#xff0c;程序运行起来&#xff0c;仍报错 QIconvCodec::convertFromUnicode: using Latin-1 for conversion, iconv_open failed …

android java 调试快捷键_Android Studio 代码页跳界面 /java和XML快速切换技巧

从csdn博客搬家过来&#xff0c;请多关照&#xff01;之前一直在csdn博客,也写了不少关于java的文章,主要是学习java上的一些问题.想通过这种方式来加深对问题的认知,同时也可以帮助到志同道合的人,一起在编程的道路上共进,共勉.fancybox的配置项Fancybox的API和配置选项说明 属…

设计模式之Builder (创建者模式)的一些个人理解(转)

对于Builder模式很简单&#xff0c;但是一直想不明白为什么要这么设计&#xff0c;为什么要向builder要Product而不是向知道建造过程的Director要。刚才google到一篇文章&#xff0c;总算清楚了。在这里转贴一下这位richardluo的比喻。简单地说&#xff0c;就好象我要一座房子住…

python-多继承

python中的多继承python和C一样&#xff0c;支持多继承。概念虽然容易&#xff0c;但是困难的工作是如果子类调用一个自身没有定义的属性&#xff0c;它是按照何种顺序去到父类寻找呢&#xff0c;尤其是众多父类中有多个都包含该同名属性。class P1 #(object): def foo(self…

java父子表_Java编程:将具有父子关系的数据库表数据转换为树形结构,支持无限层级...

在平时的开发工作中&#xff0c;经常遇到这样一个场景&#xff0c;在数据库中存储了具有父子关系的数据&#xff0c;需要将这些数据以树形结构的形式在界面上进行展示。本文的目的是提供了一个通用的编程模型&#xff0c;解决将具有父子关系的数据转换成树形结构的问题。如有不…

[转]用Whois获得电信运营商的IP地址是如何分配的?

[转]用Whois获得电信运营商的IP地址是如何分配的? Linux下获得一些中国电信运营商的IP地址分配情况: APNIC是管理亚太地区IP地址分配的机构&#xff0c;它有着丰富准确的IP地址分配库&#xff0c;同时这些信息也是对外公开的&#xff0c;并提供了一个查询工具&#xff0c;下面…

BZOJ 2301 Problem b(莫比乌斯反演+分块优化)

题目链接&#xff1a;http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id37166 题意&#xff1a;对于给出的n个询问&#xff0c;每次求有多少个数对(x,y)&#xff0c;满足a≤x≤b&#xff0c;c≤y≤d&#xff0c;且gcd(x,y) k&#xff0c;gcd(x,y)函数为x和y的最大…

java importgeopoint_如何在地图上显示更多点(GeoPoint)?

目前&#xff0c;我能够在代码中显示第一个点(pointStatie)的一点&#xff0c;但我希望显示两个点。我想要显示我所在的位置&#xff0c;以及我从另一个班级通过坐标的另一点。我目前的代码是&#xff1a;package aexp.elistcbox;import android.os.Bundle;import android.prov…

Java实现串口通信的小样例

用Java实现串口通信&#xff08;windows系统下&#xff09;&#xff0c;须要用到sun提供的串口包 javacomm20-win32.zip。当中要用到三个文件&#xff0c;配置例如以下&#xff1a; 1.comm.jar放置到 JAVA_HOME/jre/lib/ext; 2.win32com.dll放置到 JAVA_HOME/bin; 3.javax.comm…

庆祝教师节,李宁老师课程优惠劵疯抢中、会员卡优惠中,先到先得

李宁老师会员卡&#xff08;9-10至9-14&#xff09;大优惠&#xff1a;http://edu.51cto.com/member/id-12_1.html优惠劵只能购买李宁老师的视频课程&#xff1a;http://edu.51cto.com/member/id-12_1.html 优惠劵有效期&#xff1a;2015-9-10 至 2015-9-14 购买规则&#xf…

java mset_Java 反射机制(包括组成、结构、示例说明等内容)

第1部分 Java 反射机制介绍Java 反射机制。通俗来讲呢&#xff0c;就是在运行状态中&#xff0c;我们可以根据“类的部分已经的信息”来还原“类的全部的信息”。这里“类的部分已经的信息”&#xff0c;可以是“类名”或“类的对象”等信息。“类的全部信息”就是指“类的属性…

XML序列化和反序列化 以及相关类的写法

类的写法&#xff1a; 省网办数据对接中运用到 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Serialization;namespace SWBExchange.Common.Entities {public class Body{[XmlElement(ElementName "BasicIn…