汇编语言(二十七)之身份证最后一位求和校验
输入身份证前十七位数字,输入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
汇编语言(二十七)之身份证最后一位求和校验相关推荐
- kivy学习二:做一个查询所在地区身份证前6位的小软件
经过半个月的尝试,终于成功,记录下来备查! 做完之后发现有很多的问题没有解决,请大佬多批评指教! 强烈建议:学习KIVY的查看官方文档 需要用的知识: 1.字典的相关知识 2.kivy的下拉列表(Dr ...
- 【甄选靶场】Vulnhub百个项目渗透——项目二十七:Pinkys-Palace-2(LFI,端口敲震,ssh爆破,64位缓冲区溢出)
Vulnhub百个项目渗透 Vulnhub百个项目渗透--项目二十七:Pinkys-Palace-2(LFI,端口敲震,ssh爆破,64位缓冲区溢出) 靶场地址
- 居民身份证号码的奥秘及身份证第18位(校验码)的计算方法
2019独角兽企业重金招聘Python工程师标准>>> 居民身份证是国家法定的证明公民个人身份的证件.为了堵塞和制止假居民身份证的流通和使用,在查验和核查居民身份证时可掌握以下几个要 ...
- java身份证工具类(校验身份证是否合法、通过身份证获取年龄、性别、生日,将15位身份证转为18位等)
一.简介 因为工作需要经常用到身份证做一些相关操作,于是通过查阅资料总结出一些常用的工具方法,包括校验身份证是否合法.通过身份证获取年龄.通过身份证获取性别.通过身份证获取户籍地址.通过身份证获取生日 ...
- mysql 怎么用SQL语句将老身份证号15位补位到新身份证号18位
一.15位的身份证和18位的身份证的区别是什么? 只有15位号码的就是第一代身份证,而18位号码的则是第二代身份证.15位的身份证和18位的身份证的区别是:第二代身份证比第一代身份证增加了出生年份中的 ...
- 【Visual C++】游戏开发笔记二十七 Direct3D 11入门级知识介绍
游戏开发笔记二十七 Direct3D 11入门级知识介绍 作者:毛星云 邮箱: happylifemxy@163.com 期待着与志同道合的朋友们相互交流 上一节里我们介绍了在迈入Dire ...
- 【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验二十七:TFT模块 - 显示
实验二十七:TFT模块 - 显示 所谓TFT(Thin Film Transistor)就是众多LCD当中,其中一种支持颜色的LCD,相较古老的点阵LCD(12864笑),它可谓高级了.黑金的TFT ...
- python验证身份证最后一位数字代表什么_身份证号码最后一位代表什么?
展开全部 代表校验码(身份证最后一位).它是根据前面十七位数字码,按照ISO7064:1983.MOD11-2校验码计算出来的检验码. 计算方法 1.将前面的62616964757a686964616 ...
- python验证身份证最后一位数字代表什么_身份证最后一位不是数字而是X,代表什么含义?涨知识了...
身为公民都具有身份证,而证明我们身份的证件,上面身份证号码并不都是数字,而有的身份证最后一位是字母X,这代表什么意思呢?了解之后,涨知识了. 我之前是在采集单位上班,经常会输入一些身份证号码.我们都知 ...
最新文章
- Java实用教程笔记 类与对象(续)
- UVa10526 - Intellectual Property(后缀数组的应用)
- 再见丑陋的 Swagger,这个API神器界面更炫酷,逼格更高,体验更好!
- linux禁止修 5在线阅读,linux – 如何在不重新编译内核的情况下禁用CentOS 5.3中的nf_conntrack内核模块...
- golang CI: Use result of type assertion to simplify cases SCC-S1034
- 深入浅出JS:Two
- 光盘装系统和U盘装系统有什么区别吗?
- pythongetattribute_Python __getattribute__ vs __getattr__ 浅谈
- tdd(测试驱动开发)的概述
- Android Studio- 把SVN项目下载到 本地的 操作方法
- ioncube linux,lamp安装版,安装ionCube不成功
- 撰写美国作业使用APA与MLA格式的区别是什么?
- Vue3 router 默认加载 views 文件夹下全部vue文件
- PIPIOJ1166PIPI的棋盘
- 别人笑我忒疯癫,我笑别人看不穿;
- AI 隐身术,让你在视频中消失的“黑魔法”,想拥有吗?
- 传奇手游服务器搭建_传奇私服服务器端在云服务器架设,全版本通用的传奇游戏架设教程...
- Ubuntu20.4.4离线安装无线网卡驱动
- 单页应用和多页应用的区别
- buuctf web [GXYCTF2019]Ping Ping Ping(呜呜呜做个题都要被骂)
热门文章
- [汇编语言]实验一:查看CPU和内存,用机器指令和汇编指令编程。
- [PAT乙级]1047 编程团体赛
- dfs中return回溯问题
- 最短路(遍历边)计蒜客—DD坐地铁
- 团体程序设计天梯赛-练习集L1-025 正整数A+B (15分)(getline输入)
- A Greeting from Qinhuangdao Gym - 102769A 2020ccpc秦皇岛分站赛
- cookies默认过期时间_「图」Chrome Canary新版已启动“增强版cookies控制”预览测试...
- 经典排序算法(2)——快速排序算法详解
- Codeforces Round #712 (Div. 2) F. Flip the Cards 思维 + 贪心
- Educational Codeforces Round 80 (Rated for Div. 2) E. Messenger Simulator 思维 + 树状数组