Advertisement

汇编实现函数周期性执行(多媒体定时器)

阅读量:

程序需求:借助Windows操作系统所提供的定时器API函数,达成每隔一秒显示当前时刻的目标。
编程思路:在C语言编程过程中,仅需引入Winmm.lib库文件即可,而在汇编语言中同样需要包含该库,并且需要对相关函数进行声明处理。用于获取当前时间的函数为GetLocalTime,汇编代码中也需进行相应的声明。由于汇编语言中不支持SYSTEMTIME结构体,因此自行定义了一段与之大小相等的内存空间,并通过偏移量的方式实现对数据的访问操作。

开发环境

Windows 10操作系统搭配Visual Studio 2017开发环境

C语言代码实现如下:

复制代码
 #include <Windows.h>

    
 #include <stdio.h>
    
 #pragma comment(lib,"Winmm.lib")
    
  
    
 VOID CALLBACK TimerProc(
    
 	UINT      uTimerID,
    
 	UINT      uMsg,
    
 	DWORD_PTR dwUser,
    
 	DWORD_PTR dw1,
    
 	DWORD_PTR dw2)
    
 {
    
 	static SYSTEMTIME st;
    
 	GetLocalTime(&st);

全部评论 (0)

还没有任何评论哟~