[英]Slowing down a program (in c and assembly) using interrupts
我想根據這些條件使用中斷減慢程序的速度:
我想通過使用中斷來做到這一點:如果速度應該降低,我將屏蔽更多的中斷,如果速度應該增加,我將取消屏蔽中斷。
我知道如何到達鍵盤中斷並屏蔽和取消屏蔽中斷。
我只是不知道如何達到程序速度。 我正在用 c 和匯編編寫代碼。
您可以做的一件事是攔截中斷之一,例如以大約 18 赫茲調用的 BIOS 時鍾滴答int 08h
或(更好的)MS-DOS int 1Ch
處理程序。 然后根據由某些鍵盤事件控制的變量添加浪費時間的循環。
確保在每次延遲之前重新啟用中斷。
在程序結束時,您負責恢復原始中斷向量。
在不調整仿真的情況下,您無法將程序加速到比其啟動速度更快的速度。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.