微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 汇编语言计数器的实验

汇编语言计数器的实验

时间:10-02 整理:3721RD 点击:


刚刚做了一个实验,那个div指令的用处在哪里并起什么作用,上网查过意思:是说溢出标志,但我还不是很明白!

div 是除数指令,A除以B,结果商在A,余数在B

这个我知道喔!但是在这个程序起的作用是什么,不用不行的吗?

我不明白这个的用法,指令意思我懂的

通过上面计时器的开启 ,TL寄存器里面的数一直在变大,把TL寄存器里面的数赋给a,在除以10,可以得到0~9这是个数,div ab 就是得到这TL寄存器除以10的余数,然后mov a,b 再把b寄存器中存的TL寄存器里面数的余数赋值给a累加器,a累加器在给端口P0,这样就可以显示0~9这几个数了

哦,谢谢!明白,加上这个指令不是多此一举吗?

这条语句很重要,之所以用这个语句是因为你的数码管显示的方式没有延时,给你发个我写的和你要实现的功能是一样的从0~9的数码管显示汇编源码
ORG 0000H
LJMP ST0
ST0:MOV P2,#0FEH
st1:MOV R1,#10
MOV R0,#0
ST2:MOV A,R0
MOV DPTR,#TAB
MOVC A,@A+DPTR
MOV P0,A
INC R0
LCALL DELAY
DJNZ R1,ST2

SJMP ST1
TAB:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H
DELAY:MOV R5,#20
D1: MOV R6,#200
D2: MOV R7,#124
DJNZ R7,$
DJNZ R6,D2
DJNZ R5,D1
RET
END

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top