| | 2007-08-31 | 二、C C近来极受美国各系统公司的推崇,我们特以之与组合语言作个比较,但不幸的是在指令的精简上,就显得力不从心,不像组合语言那样可以斤斤计较。 因此,我们祇能就点阵移位、查小表及查总表的方式,测试其效率。首先,利用查大表的方式如下: 1:main(...(阅读全文)
|
|
| | 2007-08-31 | 一、比较表: 第一章第一节中所提及的排序程式测试结果如下: ┌──────┬─────────┬────────┐ │ 项 目│ C │组 合 语 言 │ ├──────┼─────────┼────────┤ │源程式长度...(阅读全文)
|
|
| | 2007-08-31 | 本课中我们将学习:什么是进程?如何产生和终止一个进程? 初步知识:进程是什么?下面是我从WIN32 API指南中节选的解释: “一个进程是一个正在执行的应用程序,它包含有:私有的虚拟地址空间、代码、数据和其它的操作系统资源,譬如进程可以存取的管道...(阅读全文)
|
|
| | 2007-08-31 | 用汇编语言实现RESET启动和热启动 程序名: RESET.ASM/BOOT.ASM 程序类别: 完整的汇编语言程序 功能: 用程序完成RESET启动和热启动 使用说明: 汇编连接以后转换为com文件运行 程序说明: 在日常用机过程中,如果出现了异常情况常常需要重新启动系统 .对于IBM PC...(阅读全文)
|
|
| | 2007-08-31 | 本课中我们将要学习WINDOWS钩子函数的使用方法。WINDOWS钩子函数的功能非常强大,有了它您可以探测其它进程并且改变其它进程的行为。 理论:WINDOWS的钩子函数可以认为是WINDOWS的主要特性之一。利用它们,您可以捕捉您自己进程或其它进程发生的事件...(阅读全文)
|
|
| | 2007-08-31 | 80386控制寄存器和系统地址寄存器如下表所示。它们用于控制工作方式,控制分段管理机制及分页管理机制的实施。 控制寄存器 CRx BIT31 BIT30—BIT12 BIT11—BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 CR0 PG 0000000000000000 ET TS EM MP PE CR1...(阅读全文)
|
|
| | 2007-08-31 | (文章摘自 老罗缤纷天地(http://www.luocong.com)上一节里我们介绍了CRC-32的实现原理,可是原理不能当饭吃吧?下面让我们来看看CRC是怎么应用到文件保护上的……(由于本文涉及到的源代码比较多,so请各位读者自行下载代码进行分析...(阅读全文)
|
|
| | 2007-08-31 | "[]"的用法在"常见问题"已经有所说明,引用如下: 1、push dword ptr [024c1100] 压栈024c1100值的双字 2、cmp eax,[ebp 14] eax-ebp 14的有效值,不保留值,主要看标志位 3、cmp byte ptr [eax],46 字节型eax-46,看标志位 4、lea eax,[edx-02] 把edx...(阅读全文)
|
|
| | 2007-08-31 | 一、程序状态寄存器 PSW(Program Status Word)为程序状态寄存器,这是一个16位寄存器,由条件码标志(flag)和控制标志构成:bit0:CFbit2:PFbit4:AFbit6:ZFbit7:SFbit8:TFbit9:IFbit10:DFbit11:OF其中,条件码标志用来记录程序中运行结果状态信息...(阅读全文)
|
|
| | 2007-08-31 | 理论:在前面一章中,我们学会了如何装载被调试的进程以及如何处理进程中发生的事件。为了有实际用途,我们的程序应具有修改被调试程序的能力。有好几个API函数用于这一目的。 ReadProcessMemory该函数允许你去读指定的进程的内存。函数原型如下:...(阅读全文)
|
|
| | 2007-08-31 | 理论:工具提示是当鼠标在某特定区域上停留时显示的一个矩形窗口.工具提示窗口包含一些编程者想要显示的文本.在这点上,工具提示同状态栏的作用是一样的,所不同的是工具提示当单击或者远离指定区域的时候就会消逝,你可能熟悉与工具栏相关联的工具提示,那些...(阅读全文)
|
|
| | 2007-08-31 | 在上一节教程里,我们讲了编写一个VxD程序的方法。现在我们要学以致用。在这一节里,我们要编写一个静态VxD,这个静态VxD在一个虚拟机创建或销毁时就会弹出一个消息框。 在这里下载例子...(阅读全文)
|
|
| | 2007-08-31 | 现在我们开始学习一些有关GUI编程的有趣的部分, 即:以对话框为主要界面的应用程序...(阅读全文)
|
|
| | 2007-08-31 | 建议使用MASM for EditPlus进行测试。正如"防止程序多重启动"一文所说,当已经知道自己的实例在运行了,为了节省资源,下个实例需要退出,可是用户需要打开文件,如果不处理就退出,那用户不破口大骂才怪,所以,就需要退出之前进行处理...(阅读全文)
|
|
| | 2007-08-31 | 一、宏汇编 宏定义是用一组伪操作来实现的。其格式是: macro_name MACRO [dumny_parameter_list] ... (宏定义体) ENDM其中MACRO和ENDM是一对伪操作.这对伪操作之间是宏定义体--是一组独立功能的程序代码.宏指令名(macro_name...(阅读全文)
|
|
| | 2007-08-31 | 一般有专门的字符操作指令,如: lodsb stosb movsb rep/repz/repnz cmpsb scasb等等, 这些指令其实速度很慢,好的方法是用寄存器间接寻址,如: lodsb mov al,byte ptr [esi] inc esi stosb mov byte ptr [edi]...(阅读全文)
|
|
| | 2007-08-31 | 用汇编写基于对话框的程序,可以和写VB程序一样清晰简单,并且相当多的程序都是这样的结构。用VB写的所以程序几乎都是这样的 。设计程序界面 和在VC中一样,界面(对话框已经各种控件)一般是以资源的方式存在的。编辑资源文件完全可以使用VC的资源编辑器...(阅读全文)
|
|
| | 2007-08-31 | 1.32位环境简介 ...(阅读全文)
|
|
| | 2007-08-31 | 下载ring0.bat...Kmdkit推荐的方法是把汇编源程序写成批处理bat文件,以天杀的ring0.sys为例把下面的代码存成ring0.bat;@echo off;goto make; .586P;保护模式.modelflat,stdcalloptioncasemap:none; ...(阅读全文)
|
|
| | 2007-08-31 | 80386实模式下的中断和异常的转移方法与8086相同。这里介绍的中断和异常的转移方法是指 80386在保护模式下响应中断和处理异常时所采用的转移方法。 1.中断描述符表IDT 与8086/8088一样,在响应中断或者处理异常时,80386根据中断向量号转对应的处理程序...(阅读全文)
|
|