操作系统专栏最新文章

汇编中通用寄存器的目的

1、EAX和AX:累加器,所有的I/O指令用它来与外部设备传送信息 2、EBX和BX:在计算存储单元地址时常用作基地址寄存器 3、ECX和CX:保存计数值 4、EDX和DX:做四字或二字运算时,可以把EDX(DX)和EAX(AX)组合在一起存放一个四字或二字长的数据,在对某些I/O操作时,DX可以放I/O的端口地址 5、ESP和SP:堆栈栈顶指针。 6、EBP和BP:基址寄存器 7、 ...
deepfuture 有2173人浏览 2010-02-20 16:24 专栏:WIN32汇编语言学习应用

WIN32汇编语言解析

win32汇编中的sizeof win32汇编中的sizeof不同于其它语言的sizeof ,这个是真正的sizeof,以字节为单位的。看下例szhello db 'hello,world!',0mov eax,sizeof szhelloeax=?答案是eax=13因为hello,world!为13个字节,然后0占一个,所以是13 变量命名风格  前缀 含义b bytew wo ...
deepfuture 有2564人浏览 2010-02-17 16:36 专栏:WIN32汇编语言学习应用

设置与获取窗口标题文本

获得: CString xx=""; CTestView::GetActiveWindow()->GetWindowText(xx); MessageBox(xx,xx,MB_OK); 设置: CString xxx="aaaa"; if(GetActiveWindow()==m_hWnd)SetWindowText(str);//CTes ...
deepfuture 有2008人浏览 2010-02-17 16:32 专栏:WIN32汇编语言学习应用

win32汇编快速入门

汇编可以开发WINDOWS程序?答案是肯定的,用WIN32汇编语言开发出来的WINDOWS程序具有执行效率高、占用空间小等特点。 一、开发工具下载与安装   在众 ...
deepfuture 有4666人浏览 2010-02-17 16:31 专栏:WIN32汇编语言学习应用

WIN32汇编-HELLO,WORLD!

  我们用WIN32汇编构建第一个WINODWS程序,这个程序完成显示一个带问号的对话框,对话框的内容是现在系统时间。    首先,打开MASM32Editor(在桌面上 ...
deepfuture 有4430人浏览 2010-02-17 16:29 专栏:WIN32汇编语言学习应用

保护模式下段寄存器的作用

1、保护模式一,虽然在寻址上没有分段的限制问题,但对要对一个地址空间定义一些安全上的属性,段寄存器就可以发挥作用,叫做段描述符 2、段描述符表保存了段落描述符,段寄存器中的16位用来做段描述表的索引信息 3、段描述表保存在两个特有的寄存器中 (1)GDTR寄存器,指向全局描述表(GDT),为系统中的所有任务共用的,通常是操作系统自己用的。指向内存地址 (2)LDTR寄存器,指向LDT,每个任 ...
deepfuture 有3224人浏览 2010-02-17 14:39 专栏:WIN32汇编语言学习应用

WIN32汇编-反汇编

 学好WIN32汇编,平时需要多阅读编译器生成的汇编代码,因为编译器生成的代码是最规范和最优化的,从中可以学到汇编编程和语句优化的技巧。      ...
deepfuture 有2795人浏览 2010-02-17 14:33 专栏:WIN32汇编语言学习应用

玩转菜单-菜单资源

菜单资源     WINDOWS程序的菜单通常编译前定义在资源文件中,程序员可使用VC自带的资源编辑器可视化地编辑菜单资源,在资源文件中自动生成相关脚本,对于WIN32汇编程序员,最好能看懂这些自动生成的脚本,VC程序员在完成一些特殊程序时也需要亲自看看这些脚本文件。笔者用VC向导生成一个空的单文档程序,下面是VC自动生成的脚本文件中,我们一起对其中的菜单资源进行分析:  /////////// ...
deepfuture 有1937人浏览 2010-02-08 17:31 专栏:WIN32汇编语言学习应用

二进制资源和自定义资源使用定义

1、二进制资源 (1)定义格式:     资源IDRCDATA [DISCARDABLE]    BEGIN           数据定义    END (2)装入资源的例子(MASM32)  invokeFindResource,hInstance,ID_MYRES,RT_RCDATA ;寻找资源  .if eax     mov hres,eax;返回资源句柄     inv ...
deepfuture 有2190人浏览 2010-02-08 17:29 专栏:WIN32汇编语言学习应用

LISTBOX和LIST CONTROL的项目增加方法

1、LIST CONTROL(report方式): (1)类的方式 A.增加列  LVCOLUMN lv; lv. mask=LVCF_TEXT|LVCF_FMT|LVCF_WIDTH ; lv. fmt=LVCFMT_CENTER ; lv.cx=100; lv.pszText="编号"; lv.cchTextMax=sizeof(lv.pszText); lv.iSub ...
deepfuture 有5459人浏览 2010-02-08 17:28 专栏:WIN32汇编语言学习应用

取IP寄存器的当前值

call $+3 POP CX 把IP寄存器的当前值放入cx
deepfuture 有1924人浏览 2010-02-08 17:27 专栏:WIN32汇编语言学习应用

ret/retn人为改变执行地址

  1、CALL和RET/RETN是一对指令,CALL把返回地址压入堆栈,RET/RETN把返回地址从堆栈取出,然后将IP寄存器改为该返回地址。  2、不使用CALL,而是人为地把地址放入堆栈即可实现。如:  push edi  retn  从edi处开始执行 3、加壳利用这个特点,在启动源文件文件前,将代码解密还原至原始位置  
deepfuture 有2819人浏览 2010-02-08 17:27 专栏:WIN32汇编语言学习应用

对程序的静态解码

mov si,offset word word_0_114;要解码的数量 lodsw;将数量移到ax xchg ax,cx;将数量移到cx push si;将解码起始地址保存 loc_0_10c:    xor byte prt[si],66h;解码    inc si;取一下需要解码的数据 loop loc_0_10c jmp si;解码完毕,转到si
deepfuture 有1623人浏览 2010-02-08 17:26 专栏:WIN32汇编语言学习应用

用WIN汇编开发桌面报时工具

用WIN汇编开发桌面报时工具 用WIN32汇编语言开发出来的WINDOWS程序具有执行效率高、占用空间小等特点。 一、  软件简介及相应开发工具 桌面报时工具主要完成以下两个功能: 1、     F12热键语音报时、语音整点报时。 2、  在屏幕中上方直接显示时间,并不被任何窗口挡住。 3、  程序运行后最小化为任务栏图标。 笔者以WIN汇编为开发语言,以MASM32为开发工具,因为它 ...
deepfuture 有2745人浏览 2010-02-08 17:25 专栏:WIN32汇编语言学习应用

WIN32汇编-开发记事本语音阅读工具

WIN32汇编开发记事本语音阅读工具 一、      引言 Windows系统具有风格一致的华丽图形用户界面、丰富的API函数、设备无关性、多任务等特点而广泛 ...
deepfuture 有3139人浏览 2010-01-27 20:24 专栏:WIN32汇编语言学习应用

WINDOWS实现精确定时程序

一.原理及相关API WINDOWS正确定时,不同的CPU频率可以指定同一时间间隔。 使用QueryPerformanceFrequency的API,指定每秒的频率。QueryPerformanceFrequencyFunction查询每秒的行为频率,这个频率在整个系统运行过程中不被改变。 The QueryPerformanceFrequency function retri ...
deepfuture 有2078人浏览 2010-01-20 08:25 专栏:WIN32汇编语言学习应用

PE文件格式一览

PE 的意思就是 Portable Executable(可移植的执行体)。它是 Win32环境自身所带的执行体文件格式。它的一些特性继承自Unix的 Coff (commonobject file format)文件格式。"portable executable"(可移植的执行体)意味着此文件格式是跨win32平台的 : 即使Windows运行在非Intel的CPU上,任何wi ...
deepfuture 有1539人浏览 2009-12-27 14:50 专栏:WIN32汇编语言学习应用

MFC对象与WIN32句柄的映射-TLS

1、没有办法把一个MFC某线程交到另一个线程,不能在线程间传递MFC对象指针,包括常用的MFC对象如CWND、CDC、CFONT等。 2、如果两个线程都调用CWND::GETDLGITEM()以取得对话框中的一个控件(如EDIT),则每个线程获得不同的指针,当对此指针的一个索求行为出现时,MFC产生出一些临时性对象,这些对象若被许多线程共享,MFC没有能力预期它们的生命。 3、这个限制是说,你不 ...
deepfuture 有2045人浏览 2009-12-22 11:24 专栏:WIN32汇编语言学习应用

NET中EE垃圾回收原理

1、EE是执行引擎,EE拥有对象主要是两种途径: 1)NEW方式 2)静态变量 2、对象可能拥有其它对象,这是树图的开始,CLR以树图为基础进行搜索,记录对象的引用。程序拥有的所有静态变量或者栈上的所有变量为最初的树集。 3、垃圾收集模块决定要开始收集时,调用EE,请求停止所有线程,从而可以检查线程堆栈。 1)EE办理后,栈冻结,垃圾收集器通知EE开始遍历所有的栈和静态变量,然后返回最初的 ...
deepfuture 有1527人浏览 2009-12-21 21:36 专栏:WIN32汇编语言学习应用

操作系统热门专栏

更多专栏>>

操作系统热门文章

博客专栏评论

...
649074622 评论了 搭建 CentOS 6 服务器(7) - Memcached、Re ...
liberty1789 写道楼主好文章,你是受祝福的!呵呵,谢谢赞赏~!
evasiu 评论了 <tcp/ip详解卷一>阅读笔记(4)——TCP
楼主好文章,你是受祝福的!
liberty1789 评论了 <tcp/ip详解卷一>阅读笔记(4)——TCP
...
asdface 评论了 保护模式下段寄存器的作用
不错,谢谢。
hshqcn 评论了 汇编中通用寄存器的目的
Global site tag (gtag.js) - Google Analytics