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

输入身份证前十七位数字,输入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','2'ID_max_length      db  18ID                 db  0, 19 dup(?)input              db 'input 17-bit digital code=$'output             db 0dh,0ah,'output ID=$'output_error       db 0dh,0ah,'input error$'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;输入提示lea dx,inputmov ah,9int 21h;输入Nlea dx,ID_max_lengthmov ah,10 int 21hlea si,IDmov cl,[si]                 ;设置循环次数cmp cl,17                   ;判断长度是否合法jnz errxor ch,ch inc si mov dx,0 s:mov al,17sub al,cl  lea bx,wxlat                       ;获取Wimov bl,[si]cmp bl,'0'                 ;判断字符是否合法jb errcmp bl,'9'ja errsub bl,30h                ;获取Aimul bl                    ;乘积add dx,ax                 ;累加求和inc siloop s mov ax,dxmov	bl,11	              ;和对11求余数div blmov al,ah lea bx,yxlat                     ;获得第一位字符mov ID+1+17,al           ;设置输出字符串mov ID+1+18,'$'lea dx,output           ;输出提示mov ah,9int 21hlea dx,ID+1             ;输出身份证号码mov ah,9int 21hjmp exiterr:lea dx,output_error         ;若错误,输出错误提示mov ah,9int 21h  exit:retmain endp
codes endsend main

 

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

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

相关文章

POJ3614,P2887-Sunscreen(防晒霜)【贪心】

正题 POJ题目链接:http://poj.org/problem?id3614 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP2887 题目大意 有n头牛,每个牛对阳光有上下限制的要求,有m种防晒霜,可以将牛的阳光固定…

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…

POJ3190,P2859-Stall Reservations(摊位预订)【贪心,堆】

正题 POJ题目链接:http://poj.org/problem?id3190 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP2859 题目大意 有n头牛,给出每头牛的挤奶时间(开始和结束时间),一个棚只能…

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

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”现在是: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…

ArrayList如何对某个对象的日期属性排序?

大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂 现实是:2021年10月24日09:52:35,祝大家节日快乐呐! 今天在项目过程中,遇到了个需求,需要对某个对象中的日期部分进行排序&#xf…

P3651-展翅翱翔之时【贪心,环套树】

正题 评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP3651 题目大意 有n个点,有n条有向边,改变每一个点的出边需要价值不同,求最小价值使所以边的头尾都可以相互到达。 解题思路 首先我们可以找出所以的环…

汇编语言(三十)之多模块求和

多文件模块编译,数组求和 程序运行: 暂无 代码: 模块一 extern PROADD:fardatas segmentarray dw 1,2,3,4,5,7,8,7,4,3array_len dw ($-array)/2sum dw 0 table dw 3 dup(?) datas endsstacks segment stackd…

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

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

hdu4699-Editor【对顶栈】

正题 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid4699 大意 有5种操作 1.在光标处写入一个数字 2.在光标处删除一个数字 3.4.将光标往 左/右 移动 5.询问一个位置(光标前)之前的最大前缀和 解题思路 我们开两个栈,一个是存光标前&#x…

C#使用Xamarin开发可移植移动应用进阶篇(9.混淆代码,防止反编译)

嗯,既然是客户端应用,自然而然就需要一些防止源码泄漏的手段.通过C#编写的APP,完全是可以直接解压APK,然后得到里面的DLL然后进行反编译的.. 如下图: 嗯..这样就会造成代码泄漏.. 下面就介绍一下,如何使用VS自带的Dotfuscator来进行混淆代码. 1.安装Dotfuscator 打开VS2017…

想绝交,就借钱!

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”今天谈论的话题只有两个字,就是“钱”之前在原来单位工作的时候,老板就给我说,我弟弟的工资让我帮忙管着,不然到用的时候拿不出来&#…

luoguSP1805,POJ2559-Largest Rectangle in a Histogram【单调栈】

正题 POJ题目链接:http://poj.org/problem?id2559 luogu评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidSP1805 大意 有n个高度不同,宽度为1的长方形排列在一起。找到一个长方形使其面积最大 解题思路 我们先考虑单调递增的情况 …

Orleans解决并发之痛(一):单线程

程序在运行过程中有时会莫名其妙出现代码的某些约束或者执行结果和理想状况不一样,正常逻辑怎么会出现这样的情况?到底发生了什么?好像见了鬼!瞬间好无助。 谁来救救我 大多数出现正常逻辑很难解释的时候,我们可能会想…

你们考试,我们都有点紧张呢…

“大家好,我是雄雄,欢迎关注微信公众号:雄雄的小课堂。”考试计划都好久好久了,一直没有时间,终于在今天考了一次。去监考的时候王老师还说,我都有点紧张呢,我说我也是,哈哈哈~上午几…

P2947-[USACO09MAR]向右看齐Look Up【单调栈】

正题 评测记录:https://www.luogu.org/recordnew/lists?uid52918&pidP2947 题目大意 有n头牛,高度不同,求每头牛右边第一头比他高的人。 解题思路 考虑单调栈,每次如果是比栈顶矮的就加入栈,如果是高的就将栈弹出直到比其…