
急,在线等!关于8086/8088汇编语言的延迟子程序
程序如下:DELAY:PUSHCX;延时子程序MOVCX,0100HDL1:PUSHAXPOPAXLOOPDL1POPCXRET为什么要用AX进栈出栈的操作来实现延时呢?...
程序如下:
DELAY: PUSH CX ;延时子程序
MOV CX, 0100H
DL1: PUSH AX
POP AX
LOOP DL1
POP CX
RET
为什么要用AX进栈出栈的操作来实现延时呢?用其他语句行吗?上面这个子程序实际上延迟了多长时间?老师说执行一个语句需要10毫秒。谢谢各位
其实我是想问为什么要用进栈出栈而不用加加减减?都使用来凑时间,用别的语句不行吗?或者用无操作的NOP不是更好么?又能占时间还不用占用CPU资源来处理操作~~
还有那本身循环的那条LOOP算不算循环的一部分?谢谢! 展开
DELAY: PUSH CX ;延时子程序
MOV CX, 0100H
DL1: PUSH AX
POP AX
LOOP DL1
POP CX
RET
为什么要用AX进栈出栈的操作来实现延时呢?用其他语句行吗?上面这个子程序实际上延迟了多长时间?老师说执行一个语句需要10毫秒。谢谢各位
其实我是想问为什么要用进栈出栈而不用加加减减?都使用来凑时间,用别的语句不行吗?或者用无操作的NOP不是更好么?又能占时间还不用占用CPU资源来处理操作~~
还有那本身循环的那条LOOP算不算循环的一部分?谢谢! 展开
1个回答
展开全部
延时时间和你设的频率有关,这里把PUSH AX POP AX循环100次,在乘以循环周期就是延时时间,至于用AX,BX无关紧要,只要最后恢复现场就好。
当然没问题,++——一样可以,NoP也没问题,LOOP也算时间
当然没问题,++——一样可以,NoP也没问题,LOOP也算时间

2023-06-12 广告
单片机编程是指使用单片机编程语言,如C语言,来编写单片机的程序代码,以控制单片机的行为。这种技术在电子工程、计算机科学和电子通信等领域中被广泛应用。单片机编程的主要任务是设计和实现单片机的程序,包括定义单片机的指令系统、编写程序代码、处理器...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询