![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
win32asm--罗云彬
文章平均质量分 79
chenqi111111111
这个作者很懒,什么都没留下…
展开
-
第一章 背景知识
一。80x86工作模式 (1)实模式:被复位或加电的时候以实模式启动。实模式下寄存器寻址方式与8086是一样的。实模式下,不支持优先级,所有指令相当于工作在特权级。80386就是通过在实模式下初始化控制寄存器、GDTR、LDTR与TR等管理寄存器以及页表,然后再通过CR0使其中的保护模式位置位来进入保护模式。不支持硬件上的多任务切换。 中断处理方式,仍然是用中断向量表来原创 2015-08-23 20:03:33 · 323 阅读 · 0 评论 -
第三章 使用MASM
一。Win32汇编源程序的结构 .386 ;告知编译器本程序使用的指令集,使用“.386p”则表示程序可以使用像“mov cr0,eax”这样的特权指令 .model flat,stdcall ;内存模式Win32使用flat,stdcall为子程序调用方式,指出了子程序或Win32API时调用参数传递的次序和堆栈平衡的方式。 option casemap:no原创 2015-08-23 20:06:19 · 711 阅读 · 1 评论 -
第四章 第一个窗口程序
一。主程序:(1)GetModuleHandle:获取模块句柄 invoke GetModuleHandle,lpModuleName lpModuleName参数是一个指向含有模块名称字符串的指针。此参数为NULL的时候,返回的是调用者本身模块的句柄。一般返回值都放在hInstance而不是hModule,因为一个可执行文件运行后形成的”模块“,多次加原创 2015-08-23 20:07:38 · 385 阅读 · 0 评论 -
TimeDateStamp中GMT秒数转化为实际时间
PE结构中的TimeDateStamp表明文件时何时被创建的。使用stud_pe查看该exe结构中的TimeDateStamp字段#include#includeint main(){ time_t t = 0x561A0d74 ; std::cout<<ctime(&t)<<std::endl; char *wday[] = {"Sun", "Mon", "Tue"原创 2015-10-11 15:35:02 · 1376 阅读 · 0 评论