模式和源程序格式的定义语句:
.386
.model flat,stdcall
option casemap:none
.386语句是汇编语言的伪指令,在DOS中的汇编默认使用的是8086指令集,为了在DOS环境下进行保护模式编程或仅为了使用32位寄存器,就需要用这个指令来定义。
.386p 后面的p表示程序中可以使用特权指令,这样,特权指令才能编译过去。
.mmx Pentium MMX开始增加了MMX指令集,为了使用MMX指令,需要定义这个指令。
.model 这个用来定义程序工作的模式,
它的使用方法是:
.model 内存模式[,语言模式][,其他模式...

- [游客] 在调用API函数的时候,函数原型也必须预先声明,否则,编译器会不认这个函数。invoke伪指令也无法 07/16 17:30
- [bhou] invoke 伪指令,能在一句中,打入所有的参数,并能在参数使用错误的时候能够提示。 返回值对 07/16 16:36
- [bhou] 用API方式调用存放在DLL中的函数必须同样约定一个规范,用来定义函数的调用方法、参数的传递方法和参 07/16 16:23
- [bhou] Win32程序时构筑在Win32API基础上的。在API中,包括了大量的函数、结构和消息等。它不仅给 07/16 16:19
- [bhou] 注释时源程序中不可忽略的一部分,汇编源程序的注释以分号“;”开始。 当源程序的某一行过长,不利 07/16 15:54
- [bhou] 一个源程序不必非要指定入口标号,这时可以把开始地址忽略不写,这种情况发生在编写多模块程序的单个模块时 07/16 15:50
- [bhou] 堆栈段的内存属性时可读写并且时可执行的,这样靠动态修改代码的反跟踪模块可以拷贝到堆栈中去边修改边执行 07/16 15:46
- [bhou] .code段时代码段,所有的指令都必须卸载代码段中,在可执行文件中,代码段一般时放在_TEXT节区中 07/16 15:43
- [bhou] .data, .data?和.const 定义的是数据段,分别对应不同方式的数据定义,在最后生成的可 07/16 15:36
- [bhou] 选项、模式等定义,并不会在编译号的可执行程序中产生什么东西,他们只是“说明”,真正的数据和代码时定义 07/16 15:16
[2010-07-16 14:51] Win32汇编 第3章 使用MASM 笔记
阅读全文 |
评论次数(13) |
浏览次数(778) |
所属类型(罗云杉--Win32汇编)
[2010-07-14 15:13] Win32汇编 第2章 准备编程环境 笔记
第二章一开篇,怎么还是那么艰难!!!
DOS可执行文件中的内容是由源程序中所写的代码和数据定义转换而来的。唯一的例外是带覆盖部分(overlay)的exe文件
(什么叫带覆盖部分的exe文件????)
它在基本的exe文件后,附加了一些自定义的数据
(怎么加上去的?)
其中可执行部分的长度由文件头偏移0002h和0004h中的长度给出,该长度之后到文件实际长度这部分就是overlay部分。
这样,即使一个带覆盖的exe文件大小超过了640kb,在DOS下也能运行,因为操作系统只装入真正的可执行部分,然后由程序自己去读取覆盖部分的数据。
而Win32可执行文件佳作PE文...
DOS可执行文件中的内容是由源程序中所写的代码和数据定义转换而来的。唯一的例外是带覆盖部分(overlay)的exe文件
(什么叫带覆盖部分的exe文件????)
它在基本的exe文件后,附加了一些自定义的数据
(怎么加上去的?)
其中可执行部分的长度由文件头偏移0002h和0004h中的长度给出,该长度之后到文件实际长度这部分就是overlay部分。
这样,即使一个带覆盖的exe文件大小超过了640kb,在DOS下也能运行,因为操作系统只装入真正的可执行部分,然后由程序自己去读取覆盖部分的数据。
而Win32可执行文件佳作PE文...
阅读全文 |
评论次数(8) |
浏览次数(622) |
所属类型(罗云杉--Win32汇编)
[2010-07-13 15:24] Win32汇编 第一章 背景知识 笔记
windows的特色:
图形用户界面
一致的用户界面
多任务
大量的函数调用
和设备的无关性
内存管理。...
图形用户界面
一致的用户界面
多任务
大量的函数调用
和设备的无关性
内存管理。...
阅读全文 |
评论次数(19) |
浏览次数(867) |
所属类型(罗云杉--Win32汇编)
[2010-07-13 10:55] Win32汇编 前言 笔记
“其实,任何汇编语言都是和操作系统密切相关的,不管是dos汇编,win32汇编,还是linux汇编,都是基于特定的操作系统的,如果一定要绕过操作系统,那么就不会有DOS汇编和Win32汇编的区别了,但是这样的话,我们不是在学汇编,而是在自己开发操作系统。高级语言在不同的操作系统上看起来都差不多,但做为一种低级语言,不同操作系统上的汇编就是不同的世界,所以,既然windows和dos是两个完全不同的操作系统,我们就必须抛弃DOS汇编中的大部分概念从头开始学习Win32汇编。win32汇编是Windows环境下一种全新的编程语言”...
阅读全文 |
评论次数(0) |
浏览次数(585) |
所属类型(罗云杉--Win32汇编)
页码数(1):
1