MASM初探

2017-07-14  本文已影响0人  RainKill

X86处理器主要有四种操作模式:

一、保护模式:保护模式是CPU的原生状态,在这种模式下,所有的指令和特性都是可用的,分配给程序独立的内存区域叫做段,而CPU会阻止程序使用自身段范围之外的内存。
二、虚拟8086模式:保护模式下,处理器可以在一个安全的环境中直接执行是地址模式软件,如果一个程序崩溃了或是试图向系统内存区域写数据,都不会影响到同一时间内执行的其他程序。现代操作系统可以同时执行多个独立的虚拟8086会话。WIN系统下一个CMD命令所运行的MS-DOS程序就是一个独立的虚拟8086模式的应用,总的来说虚拟8086模式就是运行在保护模式下的实地址模式。
三、实地址模式:实地址模式就是早期的Intel处理器的编程环境,但是增加了一些其他的特性,如切换到其他模式的功能。当程序需要直接访问系统内存和硬件的时候,就是这种模式。
四、系统管理模式:这种模式会向操作系统提供实现诸如电源管理和系统安全等功能的机制,这些功能是由计算机制造商实现的,是为了一个特定的系统设置而定制的处理器。

小结:

现代MASM汇编都是基于保护模式下编程,WINDOWS对其权限做了一些限制。相对的也提供了一些便捷的调用功能。

地址空间

在32位保护模式下,一个任务或程序最大可寻址4GB的线性地址空间。从P6处理器开始,一种被称为扩展物理寻址的技术可以使得可以被寻址的物理内存增加到了64GB。而实地址模式下只能寻址1MB。

32位通用寄存器

8个通用寄存器:EAX,EBX,ECX,EDX,EBP,ESP,ESI,EDI
6个16位段寄存器:CS,ES,SS,FS,DS,GS
1个标志位寄存器:EFLAGS
1指令指针寄存器:EIP

特殊用法:某些通用寄存器有特殊用法。

EFLAGS

其他寄存器不列举了。都是浮点或单指令多数据,多指令多数据用到的寄存器。用于并行计算或是浮点计算。

上一篇 下一篇

猜你喜欢

热点阅读