参考:http://book.51cto.com/art/200907/133040.htm
win32汇编和8086或者单片机汇编,总体来说都是类似的,不同的汇编的主要差别无非就是指令区别,伪指令的区别等。
(2)模式定义
.386
.model flat,stdcall
option casemap:none
这些指令定义了程序使用的指令集、工作模式和格式。
1. 定义使用的指令集
.386是汇编语言的伪指令,类似的指令有.8086,.186,.286,.386/.386p,.486/.486p和 .586/.586p等,用于告诉编译器在本程序中使用的指令集。默认使用的是8086指令集,所以如果要写win32的汇编,使用32位寄存器,就必须使用.386指令。
另外,这些指令中,带p的伪指令表示程序中可以使用特权指令。
要使用80486或Pentiun处理器的指令,就需要使用.486或.586,另外,和指令集相关的伪指令还有.mmx伪指令,表明除了使用基本的.586指令外,还能使用扩展的MMX指令。如下:
.586
.mmx
2. .model指令
用于定义程序工作的模式,使用方法:
.model 内存模式[,语言模式][,其他模