8086下求汇编语言延时3秒的代码

如题,希望有注释,否则我可能看不懂,要是有能修改值设置秒数的计算公式就更好了... 如题,希望有注释,否则我可能看不懂,要是有能修改值设置秒数的计算公式就更好了 展开
 我来答
百度网友3ee4043
推荐于2017-12-16 · TA获得超过1139个赞
知道小有建树答主
回答量:1055
采纳率:74%
帮助的人:360万
展开全部
MOV AX,5FFFH ;可修改0000~0FFFFH之内 越大延时越高
REP2:
MOV CX,5FFFH
REP10MS:
LOOP REP10MS
DEC AX ;AX-1->AX
CMP AX,0H ;比较AX和0的大小
JNE REP2 ;AX不等于0则跳转到 REP2

就是机器没执行一条指令要170ns,数字仅供参考
让循环重复执行5FFF*5FFF次,达到秒级 具体的要自己调试
追问
你上面写的这段代码,比方说在主频是2.3GHZ的电脑,运行完需要多长时间呢?
意法半导体(中国)投资有限公司
2023-06-12 广告
单片机,即单片微控制器,也称为单片微型计算机,是将中央处理器(CPU)、存储器(ROM,RAM)、输入/输出接口和其他功能部件集成在一块 在一个小块的集成电路上,从而实现对整个电路或系统的数字式控制。单片机不是完成某一个逻辑功能的芯片,而是... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
tzc04120
2013-01-06 · TA获得超过2657个赞
知道大有可为答主
回答量:1.1万
采纳率:15%
帮助的人:3348万
展开全部
延迟的方法很多,定时/计数更方便,更准确。软件延时周期(多个嵌套线)。的基础上的时间的长度来确定的周期数,是精确的。时间计算参考晶振频率的机器来计算每个指令的运行时间(乘以每个指令的运行时间的周期数的指令的总运行时间),所有的指令的运行时间和延迟时间。

例如:设置晶振频率为12MHz,每一个机器周期为1us
513us的延时程序的
DL513:MOV R7,#0FFH;的1uS
DJNZ R7 ,$ 2微秒* 255 = 510us
RET; 2us的
延迟时间1 +510 +2 = 513us

较长的延迟时间可用于多种循环(四重循环,例如),如:

KKKK0:MOV R2,#XX的1uS
KKKK1:MOV R3,#LL;为1us * XX
KKKK2:MOV R4,# NN;为1us * XX * LL
KKKK3:MOV R5,#MM;为1us * XX * LL * NN
DJNZ R5,$; 2us的* XX * LL * NN * MM
DJNZ R4 KKKK3; 2us的* XX * LL * NN
DJNZ R3 KKKK2; 2us的* XX * LL
DJNZ R2,KKKK1; 2us的* XX

RET; 2us的
>延迟时间1us +1 * XX +1我们* XX * LL +1我们* XX * LL * NN +2我们* XX * LL * NN * MM +2我们* XX * LL * NN +2 * XX * LL +2我们* XX +2我们
正确地确定了四个周期,NN XX,LL,MM将能获得准确的延迟时间。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式