汇编语言(二十三)之求一个数的补数

给定一个数,求该数的补数

程序运行:

 

代码:


datas segmentNUM      DB   12H,34H,56H,78H,9AH,0BCH,23H,45HDB    67H,89H,0DEH,13H,24H,35H,46H,57HN      DB   $-NUMoutputNUM    db          "orignal data NUM=$"outputNUMC   db  0dh,0ah,"NUM's complement=$"
datas endsstacks segment stackdb  100h dup(?)stacks endscodes segmentassume cs:codes,ds:datas,ss:stacks
main   proc  far
start:push dsmov ax,0hpush axmov ax,datas          ;初始化dsmov ds,ax;输出原始的NUMlea dx,outputNUMmov ah,9int 21h	   mov bl,Nxor bh,bhdec bx	   os:mov al,NUM[bx]call hexidemicaldec bx cmp bx,0 jge osmov dl,'H'mov ah,2int 21h;求补mov cl,N             ;将NUM的字节数移至cxxor ch,ch cmp cx,0             ;判断字节数是否为0jz no_operate        ;若为0,跳转lea bx,NUM           ;取NUM的偏移地址mov ah,0             ;ah清零s:xor al,al           ;al设置0sahf		         ;恢复上一次减法的标志位sbb al,[bx]         ;带位减法,求补lahf                 ;保存标志位mov [bx],al         ;求补的值保存在原始的位置inc bx               ;移至下一个单元loop s ;输出求补的NUMlea dx,outputNUMCmov ah,9int 21hmov bl,Nxor bh,bhdec bx	   s1:mov al,NUM[bx]call hexidemicaldec bx cmp bx,0 jge s1mov dl,'H'mov ah,2int 21hno_operate:retmain endphexidemical proc near push axpush cx push bx xor ah,ah mov bl,16div blmov cx,axmov dl,clcmp dl,10jb nextadd dl,7 next:add dl,30h   	  mov ah,2int 21h	mov dl,chcmp dl,10jb next1add dl,7 next1:add dl,30h	  int 21hpop bxpop cx pop ax rethexidemical endpcodes endsend main

 

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

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

相关文章

ASP.NET Core 防止跨站请求伪造(XSRF\/CSRF)攻击

什么是反伪造攻击? 跨站点请求伪造(也称为XSRF或CSRF,发音为see-surf)是对Web托管应用程序的攻击,因为恶意网站可能会影响客户端浏览器和浏览器信任网站之间的交互。这种攻击是完全有可能的,因为Web浏览器会自动在每…

汇编语言(二十四)之输出n行星号

输入一个数n,输出n行星号 程序运行: 代码: datas segmentline_number_max_len db 0ffhline_number db 0, 100h dup(?)input_line_number_prompt db input line number:$output db 0dh,0…

家的味道,家的感觉!!!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”国庆期间回了一趟家,上次从家里出来还是2020年正月的时候,因为疫情的原因,21年过年没有回去……早早的就买下回家的票,以前回家一趟&…

POJ3889-Fractal Streets【分形,递归,分治】

正题 题目链接:http://poj.org/problem?id3889 大意 第一级城市为图一,然后每次扩展一级就将原本的城市复制3份,一份放上面,一份正旋90’放左上,一份逆序90’放左边,最后将4份的头和尾连起来,…

.NET Core 2将Visual Basic带到了Linux和macOS平台

Microsoft已经愈加接近将Visual Basic划为.NET Core平台上的一等公民。作为.NET Core 2发行版的一部分,VB开发者现在可以编写针对.NET Standard 2.0的控制台应用程序和类库,并且可以兼容多个平台。这就意味着运行在Windows上的可执行文件或者类库也能够运…

汇编语言(二十五)之成绩分段统计

已知一个班的成绩,进行60,70,80,90,100分段统计 程序运行: 代码: datas segmentstudents_number dw 10students dw 76,69,84,90,73,88,99,63,100,80s6 dw 0hs7 dw 0hs8 dw 0hs9 dw 0hs10 dw 0houtput…

感动哭了……

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”一大早就好多人送祝福,感动不已~下课看手机之后,看到手机上有条消息,是认识好多年好多年的大姐发的:“小穆,今天你生日&…

汇编语言(二十六)之自然数求和

输入一个数N,对1到N的所有自然数求和 程序运行: 代码: datas segmentN_string_max_length db 0ffhN_string db 0, 100h dup(?)N dw 0 sum dd 0 input db …

同学们,看看这里吧!!!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。恶”早上一进班,发现班内少了好几个学生,一想肯定是这几个熊孩子又违纪被王老师喊去了…自从这些孩子入学以来,大事小事不断的去犯,尤其是…

Oleans集群之Consul再解释

由于上周发文章的时候,我正要打算出门,所以就把写好的全部发出去了,有点仓促,虽然写了主线,但是这里还是需要再次解释一下. 我看到Orleans已经升级到了1.5.1了,(nuget上的官方发布),于是我就把Orleans升级到了1.5.1,顺便把net更改到了4.7版本. 再升级的时候,注意有几个依赖库…

别在被骗了!!!!!!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”今天,在身边又发生了一起诈骗案,被骗金额达5000余元在,就像佟老师说的一样,骗子可是一点人性都没有……大致的看了看具体细节&#xff0…

汇编语言(二十七)之身份证最后一位求和校验

输入身份证前十七位数字,输入18位身份证 程序运行: 代码: datas segmentw db 7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2y db 1,0,X,9,8,7,6,5,4,3,2ID_max_length db 18ID db 0, 19 dup(?)input …

C#使用Xamarin开发可移植移动应用进阶篇(8.打包生成安卓APK并精简大小),附源码

我记得,之前在写安卓方面的文章的时候,有人就问过我.Xamarin.Android为什么打包出来这么大?随便一个HelloWord就20-30MB? 嗯..今天我们就来解决这个问题.. 我们先从指定一个应用程序图标开始.. 1.指定应用程序图标 我们直接右键Android项目,属性.选择安卓清单.如下: 在Ap…

vue中设置子组件的点击事件不影响父组件的点击事件

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”今天分享个技术块儿。在做项目的过程中,遇到了个问题,简单的描述一下:有一个card卡片,上面绑定了个点击事件,点击card卡片&a…

一个还算简单的微信消息SDK(基于.Net Standard 2.0)

虽然微信公众号出现了好久,不过在SDK这件事情上感觉并没有多少人把它当成一个有技术含量的事情来做,很多SDK做的事情就是一个代码的堆叠,当然也可能写的好的并没有开源出来。所以在某个翻遍github而无所获的下午我写了一个基础的基于事件的微…

汇编语言(二十八)之统计单词

输入一行字符串,统计单词SUN出现的个数 程序运行: 代码: datas segmentENG_max_length db 0ffhENG_length db 0ENG db 100h dup(?)eng_len dw 0SUN db SUNsun_len dw $-SUNcount dw 0…

这可能就是写代码的乐趣吧,你,也一定会爱上写代码的!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”现在是:2021年10月23日22:02:41。于我来说,最感兴趣的莫过于上课和写代码了。最近一下在做一个项目,可能是前期数据库设计的不是很好,导…

汇编语言(二十九)之数值的二进制和十进制

给定一个数,输出该数的二进制和十进制数 程序运行: 代码: datas segmentVAL1 dw 156datas endsstacks segment stackdb 100h dup(?)stacks endscodes segmentassume cs:codes,ds:datas,ss:stacks BANDO proc far start:push dsmov ax,0…

ASP.NET Core MVC – Tag Helper 组件

ASP.NET Core Tag Helpers系列目录,这是第五篇,共五篇: ASP.NET Core MVC – Tag Helpers 介绍ASP.NET Core MVC – Caching Tag HelpersASP.NET Core MVC – Form Tag HelpersASP.NET Core MVC – 自定义 Tag HelpersASP.NET Core MVC – T…

vue+elementui中,el-select多选下拉列表中,如何同时获取:value和:label的值?

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。 项目场景: 正如题目所说,今天在项目过程中遇到了个需求,因为需要在前台展示运动员的名称,但是运动员的编号在别的地方还需要使用&#xff…