如何实现延迟

masmaster 2010-06-24 04:19:46
很多高级语言都有sleep功能, 比如延迟N秒等。 请问,在汇编里如何实现sleep 1秒? 多谢!
...全文
84 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
masmaster 2010-06-24
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 nanlingcg 的回复:]
Assembly code

;***运用时钟中断以秒为单位进行延迟_习例(初步)***
;每秒输出一个字符,16次输出后结束程序
;第一次输出的延迟可能不准确,没有再进行校正,如校正,将使程序复杂化,故称之初步习例.
;欢迎交流,互相学习.CSDN_汇编_nanlingcg
;------------------------------------------------------……
[/Quote]
太感谢啦, 拉下来好好研究!
nanlingcg 2010-06-24
  • 打赏
  • 举报
回复

;***运用时钟中断以秒为单位进行延迟_习例(初步)***
;每秒输出一个字符,16次输出后结束程序
;第一次输出的延迟可能不准确,没有再进行校正,如校正,将使程序复杂化,故称之初步习例.
;欢迎交流,互相学习.CSDN_汇编_nanlingcg
;-------------------------------------------------------
DATAS SEGMENT
LAST DB 0
COUNT DB 0FH
TABLE DB "0123456789ABCDEF"
DATAS ENDS

STACKS SEGMENT
DB 16 DUP (?)
STACKS ENDS

CODES SEGMENT
ASSUME CS:CODES,DS:DATAS,SS:STACKS
START:
MOV AX,DATAS
MOV DS,AX
MOV AX,STACKS
MOV SS,AX
MOV SP,16
LOOPS:
MOV AH,2CH
INT 21H
CMP DH,LAST
JZ LOOPS
MOV LAST,DH
MOV BL,COUNT
INC BL
AND BL,0FH
MOV COUNT,BL
XOR BH,BH
MOV DL,TABLE[BX]
MOV AH,2
INT 21H
CMP BL,0FH
JZ OVER
JMP LOOPS
OVER:
MOV AH,4CH
INT 21H
CODES ENDS
END START
;-----------------------------------------------

wibnmo 2010-06-24
  • 打赏
  • 举报
回复
关注中。。。
火雲邪神 2010-06-24
  • 打赏
  • 举报
回复
cpu : HLT

www . king of coders . com
masmaster 2010-06-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 bobeerat 的回复:]
;cx的值斟酌填
mov cx,9980h
delay: loop delay
[/Quote]
网上有这的例子, 我实验了没有起到延迟的作用。
masmaster 2010-06-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zara 的回复:]
可以通过实时时钟计数来判断吧。先取当前计数,加上相应秒数对应的 ticks 计数;然后在 hlt 指令后判断当前计数是否已经到了最后的计数。
[/Quote]
能否给个实例? 多谢
Bobeerat 2010-06-24
  • 打赏
  • 举报
回复

;cx的值斟酌填
mov cx,9980h
delay: loop delay
zara 2010-06-24
  • 打赏
  • 举报
回复
可以通过实时时钟计数来判断吧。先取当前计数,加上相应秒数对应的 ticks 计数;然后在 hlt 指令后判断当前计数是否已经到了最后的计数。
masmaster 2010-06-24
  • 打赏
  • 举报
回复
在王爽的教材里有一种,请问还有没有别的方法呢
      mov dx,10h
mov ax,0
s: sub ax,1
sbb dx,0
cmp ax,0
jne s
cmp dx,0
jne s

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧