密码锁 汇编 三组可改密码

时间: 2023-06-26 08:04:09 浏览: 59
以下是一个简单的密码锁程序,可以通过修改其中的三组密码来实现可改密码的功能。 ```asm .MODEL SMALL .STACK 100H .DATA PWD1 DB '1234$' PWD2 DB '5678$' PWD3 DB '9012$' MSG1 DB 'Enter Password: $' MSG2 DB 'Access Granted! $' MSG3 DB 'Access Denied! $' .CODE MAIN PROC MOV AX, @DATA MOV DS, AX ;初始化数据段寄存器 MOV DX, OFFSET MSG1 ;输出提示信息 MOV AH, 9 INT 21H MOV SI, 0 ;初始化密码输入指针 MOV CX, 4 ;设定密码长度为4位 MOV DI, OFFSET PWD1 ;设定初始密码为PWD1 READ: ;读取键盘输入 MOV AH, 01H INT 21H CMP AL, 0DH ;如果输入回车键,则跳出循环 JE CHECK MOV BL, AL ;将输入存入BL MOV AH, 0EH ;在屏幕上输出* INT 10H MOV [DI+SI], BL ;将输入存入密码缓冲区 INC SI ;指针加1 CMP SI, CX ;如果已输入完4位密码,则跳出循环 JNE READ CHECK: ;判断密码是否正确 MOV DI, OFFSET PWD1 ;先判断PWD1 MOV CX, 4 MOV SI, 0 CMPSTR: ;逐位比较 MOV AL, [DI+SI] MOV BL, [PWD1+SI] CMP AL, BL JNE NEXT INC SI CMP SI, CX JE GRANTED NEXT: ;尝试下一个密码 MOV DI, OFFSET PWD2 MOV CX, 4 MOV SI, 0 CMPSTR2: MOV AL, [DI+SI] MOV BL, [PWD2+SI] CMP AL, BL JNE NEXT2 INC SI CMP SI, CX JE GRANTED NEXT2: ;尝试第三个密码 MOV DI, OFFSET PWD3 MOV CX, 4 MOV SI, 0 CMPSTR3: MOV AL, [DI+SI] MOV BL, [PWD3+SI] CMP AL, BL JNE DENIED INC SI CMP SI, CX JE GRANTED DENIED: ;密码不正确,输出提示信息 MOV DX, OFFSET MSG3 MOV AH, 9 INT 21H JMP READ GRANTED: ;密码正确,输出提示信息 MOV DX, OFFSET MSG2 MOV AH, 9 INT 21H MOV AH, 4CH ;退出程序 INT 21H MAIN ENDP END MAIN ``` 在上面的代码中,可以看到三组不同的密码分别存储在 PWD1、PWD2 和 PWD3 中,可以根据需要修改这些密码。同时,可以通过修改 MSG1、MSG2 和 MSG3 来自定义程序的输出信息。

相关推荐

最新推荐

recommend-type

8051单片机设计密码锁

本资源有感于网上资料的驳杂,使我 的单片机课程设计倍感煎熬。...程序在修改密码时,若输入错误密码可能导致一个小bug(不排除是个人实验箱问题)。但正常使用时基本不会出现。希望本文能给以大家帮助。
recommend-type

片机电子密码锁的设计(汇编语言)

片机电子密码锁的设计(汇编语言) 片机电子密码锁的设计(汇编语言) 片机电子密码锁的设计(汇编语言)
recommend-type

汇编语言实现 多功能密码锁 设计(包含硬件).doc

设计任务:多功能密码锁 目录 一、设计目标 二、设计要求 三、整体功能描述 四、硬件设计功能模块 1.键盘 2.中断控制 3.计时 4.按键响应 5.报警 6.储存器及片选 7.整机电路 五、程序流程图 六、程序清单 七...
recommend-type

单片机电子密码锁的设计(汇编语言)

单片机电子密码锁的设计密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能
recommend-type

硬部件设计与调试—多功能密码锁

这是一门硬部件设计与调试课程设计。用汇编语言编写的软件部分,并包括了各种原理图
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

【实战演练】MATLAB用遗传算法改进粒子群GA-PSO算法

![MATLAB智能算法合集](https://static.fuxi.netease.com/fuxi-official/web/20221101/83f465753fd49c41536a5640367d4340.jpg) # 2.1 遗传算法的原理和实现 遗传算法(GA)是一种受生物进化过程启发的优化算法。它通过模拟自然选择和遗传机制来搜索最优解。 **2.1.1 遗传算法的编码和解码** 编码是将问题空间中的解表示为二进制字符串或其他数据结构的过程。解码是将编码的解转换为问题空间中的实际解的过程。常见的编码方法包括二进制编码、实数编码和树形编码。 **2.1.2 遗传算法的交叉和
recommend-type

openstack的20种接口有哪些

以下是OpenStack的20种API接口: 1. Identity (Keystone) API 2. Compute (Nova) API 3. Networking (Neutron) API 4. Block Storage (Cinder) API 5. Object Storage (Swift) API 6. Image (Glance) API 7. Telemetry (Ceilometer) API 8. Orchestration (Heat) API 9. Database (Trove) API 10. Bare Metal (Ironic) API 11. DNS
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。