怎么用8086汇编编写密码锁程序

作者&投稿:倪狗 (若有异议请与网页底部的电邮联系)
用汇编语言编写电子密码锁~

你有C语言程序了,就用keilc编译,在配置编译选项时,在列表标签中,选中汇编代码,编译后用会生成.LST文件,打开这个LST文件后就会找到汇编代码了,整理一下就是需要汇编程序了。

;----宏Char,输出一字符串
char macro X
mov dx,offset X
mov ah,9
int 21h
endm

CODE SEGMENT
ASSUME CS:CODE,DS:CODE
START:
push cs
pop ds
mov si,offset password
char mes1
mov cx,3
next:
mov ah,7
int 21h
push ax
mov al,'*'
mov ah,0eh
int 10h
pop ax
or al,20h ;字符都化为小写
cmp al,[si]
jnz error
inc si
loop next
char mes3 ;口令正确
jmp exit
error:
char mes2 ;口令错误
exit:
mov ah,0
int 16h
mov ah,4ch
int 21h
mes1 db 13,10,9,'Input the Password: ',13,10,9,'$'
mes2 db 13,10,9,'Error Password!$';口令错误
mes3 db 13,10,9,'Welcome in!$';口令正确
password db 'yxt' ;预存密码
CODE ENDS
END START

;怎么用8086汇编编写密码锁程序
;http://zhidao.baidu.com/question/146799944.html
;----宏Char,输出一字符串
char macro X
mov dx,offset X
mov ah,9
int 21h
endm

CODE SEGMENT
ASSUME CS:CODE,DS:CODE
START:
push cs
pop ds
mov si,offset password
char mes1
mov cx,3
next:
mov ah,7
int 21h
push ax
mov al,'*'
mov ah,0eh
int 10h
pop ax
or al,20h ;字符都化为小写
cmp al,[si]
jnz error
inc si
loop next
char mes3 ;口令正确
jmp exit
error:
char mes2 ;口令错误
exit:
mov ah,0
int 16h
mov ah,4ch
int 21h
mes1 db 13,10,9,'Input the Password: ',13,10,9,'$'
mes2 db 13,10,9,'Error Password!$';口令错误
mes3 db 13,10,9,'Welcome in!$';口令正确
password db 'yxt' ;预存密码
CODE ENDS
END START


8086CPU和汇编
所用到的寄存器,无非只有四个段寄存器(CS、DS、ES、SS),四个基本寄存器(AX、BX、CX、DX),两个变址寄存器(SI、DI),三个指针寄存器(BP、IP、SP)、一个标志寄存器(Flag)。在后期的CPU中,为了保证与8086兼容,这些寄存器不变,但新增了一些寄存器。因此,8086汇编语言在后期CPU实模式状态...

8086汇编语言8进制转4进制
楼主我给个思路你看行吗。接下来看你语言功力的。。。首先我假定这是非负整数的转换程序。程序分为两个部分:1.确定用户输入的数字是否是该进制的数。解决方案如下:建立一个A:0~7的数组和B:0~3的数组。当用户输入的是八进制的数的话,先拿去跟A数组比较看是否符合规范。关键汇编指令: rep ...

8086汇编 电子琴源代码?
这个是微机原理课程设计的任务, 采用8086汇编语言实现,欢迎各位参考.注意事项: 1.0 的功能仅限于低音1 – 7 的播放, 分别对应数字键1 – 7. 如果按下其他键则有可能导致数组越界而产生不可预料的结果, 采用者请注意这点. 建议对按键进行除以7取余数的方法防止越界.源代码如下:music1.0.asmdata ...

在8086汇编语言中,哪些段寄存器可以用MOV指令赋值,哪些段寄存器不允许...
除了PSW,好像是都可以的啊!AX,BX,CX,DX,SI,DI,SP,BP,IP,CS,SS,DS,ES,都是可以用mov来赋值的 虽然有的是不能直接mov ds,123 但是可以mov ax,123 然后,mov ds,ax === IP可以用jmp来改变,cs可以用push和pop。其他的都可以使用mov,有的不能用立即数 ...

8086汇编程序是怎么调试的,书本上只把例题写了出来。但是没教调试。_百...
8086的汇编程序可以直接在cmd窗口进行DEBUG,但前提是你的源代码已被编译并连接成了一个.exe文件。

8086\/8088汇编程序常量如何定义,定义在代码段还是数据段,还是其他段...
8086\/8088汇编程序常量的定义:要靠汇编语言中的伪指令来实现,例如:1 表达式赋值伪指令EQU PMAX EQU 256 XAB EQU PMAX-6 2 等号伪指令= EMP=7 这些都是在程序运行过程中,数值不变的量,叫符号常量 汇编时,程序中的符号常量 如:PMAX、EMP将会用常量256、7来替换。8086\/8088汇编程序常量的...

用8086汇编语言,编写延时子程序
该程序的延时时间,请楼主按以下介绍方法及的资料自行计算:(1)时钟周期 T = 1\/(2.2x10^9) ≈ 0.45 ns ,(2)延时时间 = ∑(数据访问时间+指令执行时间)(3)常用指令执行的时间及各种寻址方式所用时间见下表(点击可显示大图):

8086\/8088汇编语言编一程序
ESC键 VK_ESCAPE (27)回车键: VK_RETURN (13)TAB键: VK_TAB (9)Caps Lock键: VK_CAPITAL (20)Shift键: VK_SHIFT ($10)Ctrl键: VK_CONTROL (17)Alt键: VK_MENU (18)空格键: VK_SPACE ($20\/32)退格键: VK_BACK (8)左徽标键: VK_LWIN (91)右徽标键: VK_LWIN (...

编写8086汇编语言程序 将DX寄存器的内容从地位到高位的顺序分成4组,且...
我对汇编不熟悉,帮你顶一下。应该是将DX右移,然后与上0xFF,然后分别存放在AL,BL,CL,DL中就可以了。

在汇编语言中8086与80386的区别是什么?
8086与80386其实没有多少区别,80386只是8086的后续版本,增加了很多指令,将寄存器等增大,操作数长度也变长了,他们的关系就像软件一样,前期开发的软件功能不能满足需要了,然后公司就开发功能更加强大的后续版本,在兼容以前版本的同时还增加很多新的东西进去,典型的例子就是PHOTOSHOP(前期不叫CS)!很...

新兴区13277525169: 用汇编语言编写电子密码锁 -
邹浩奥德: 你有C语言程序了,就用keilc编译,在配置编译选项时,在列表标签中,选中汇编代码,编译后用会生成.LST文件,打开这个LST文件后就会找到汇编代码了,整理一下就是需要汇编程序了.

新兴区13277525169: 求帮忙编一段 汇编语言,基于51单片机的密码锁,要求在下面.真心求帮忙啊 -
邹浩奥德: ;根据题目要求,本设计操作如下: ; ;1.初始状态数码管全显示0,然后按键盘输入4个数字,输入完成后按键盘的 ;“F”键,将输入的4为密码与原始密码1234比较,如果正确相同则P0.0口接的继电器 ;工作灯亮.如果错误不相同,则恢复初始状态全显示0. ;2.输入过程中,led会逐位'-',直到密码输入完成 ;3.密码正确以后,led显示open ;4.若要重新输入密码,按单片机复位键或者按键盘的“D”键即可重新输入原理图和代码详见附件. 原理图用proteus绘制,并仿真成功. 代码用汇编编写,keil u4下编译成功. 有问题请追问.

新兴区13277525169: 用汇编语言写一个程序用51单片机实现四位密码开门,怎么写呢 -
邹浩奥德: 不论是汇编程序还是C语言程序,首先要有原理图,或仿真图,才能写程序.四位密码锁要有按键的,最好是矩阵按键.还有,有没有显示电路,用数码管显示还是LCD显示?密码锁程序就挺麻烦的,用汇编语言写就更麻烦了.

新兴区13277525169: 求单片机密码锁的程序 -
邹浩奥德: 这个问题似乎不是太难 不过我是用汇编的我给你思路~也许不咋的 假设你的密码是100001 只要取得p0的低6位 判断是不是和100001相同就可以了啊? 如果我理解有错的话 还望见谅push bpush amov 20h,#41h,;1000001放到20单元mov a,...

新兴区13277525169: 求改错.用汇编语言编写一个密码验证程序,密码laotang. -
邹浩奥德: data segment massage db 'Password:$' db 'Password is wrong!$' db 'OK!$' password db 6CH,61H,6FH,74H,61H,6EH,67H imput db 10,0,10 dup(?) data ends ;******************************************** code segment assume cs:code,ds:data start: ;...

新兴区13277525169: 汇编语言转C语言:基于AT89S52单片机的密码锁设计 -
邹浩奥德: #include#define uchar unsigned char#define uint unsigned intsbit SPK=P3^7;sbit ACT=P3^5; bit ok_flag;static uchar indata[8];static uchar s...

新兴区13277525169: 8086汇编语言怎么编写 -
邹浩奥德: 找一个格式模板 在相应位置填上数据及代码 再以asm为扩展名存盘即可

新兴区13277525169: 谁有单片机电子密码锁的程序呢?汇编,C的都可以哦.实现功能了给高分哦!现在在做单片机的课程设计.
邹浩奥德:#include <stdio.h> #include <conio.h> /*本程序是为边锋的密码保护用的计算器,第一行是两步结果,第二行是四步结果*/ /*程序的精华部分在第二个子程序,就是void cryptogram(int *) /*这个程序最主要的是程序的健壮性,我们在这上面花了不少...

新兴区13277525169: 来人,8086程序,汇编语言,简单设计 -
邹浩奥德: MOV CX,ES:[123FH] //送给哪个寄存器?此处选为CX MOV DX,ES:[003DH] //送给DX寄存器 OR AL,80H //最高位置1,其余位不变

新兴区13277525169: 用C语言做一个输入密码程序 -
邹浩奥德: 以gcc编译器为例,可以分为四步. 第一步是预处理,包括语法检查等工作. gcc -p abc.c 第二步由源程序生产汇编语言代码. gcc -s abc.c 会生成abc.s文件,这个文件里就是汇编代码. 第三步编译器生成目标代码,一个源文件生成一个目标代码. gcc -c abc.c 会生成abc.o 第四步连接器从目标代码生成可执行文件. gcc abc.o 目标代码包括机器码和符号表(函数及变量名).连接器的主要作用是通过符号表在库文件和其他模块中找到在目标代码中引入或未定义的符号(函数及变量名),将几个目标代码合成可执行文件.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网