汇编语言PTR运算符:重写操作数的大小类型

PTR 运算符可以用来重写一个已经被声明过的操作数的大小类型。只要试图用不同于汇编器设定的大小属性来访问操作数…

汇编语言TYPE运算符:返回变量的大小

TYPE 运算符返回变量单个元素的大小,这个大小是以字节为单位计算的。比如,TYPE 为字节,返回值是 1;T…

汇编语言LENGTHOF运算符:计算数组中元素的个数

LENGTHOF 运算符计算数组中元素的个数,元素个数是由数组标号同一行出现的数值来定义的。示例如下: .da…

汇编语言LABEL伪指令

LABEL 伪指令可以插入一个标号,并定义它的大小属性,但是不为这个标号分配存储空间。LABEL 中可以使用所…

汇编语言间接寻址

直接寻址很少用于数组处理,因为,用常数偏移量来寻址多个数组元素时,直接寻址不实用。反之,会用寄存器作为指针(称…

汇编语言JMP和LOOP(转移)指令

默认情况下,CPU 是顺序加载并执行程序。但是,当前指令有可能是有条件的,也就是说,它按照 CPU 状态标志(…

汇编语言64位MOV指令

64 位模式下的 MOV 指令与 32 位模式下的有很多共同点,只有几点区别,现在讨论一下。立即操作数(常数)…

汇编语言64位加法和减法

如同 32 位模式下一样,ADD、SUB、INC 和 DEC 指令在 64 位模式下,也会影响 CPU 状态标…

汇编语言堆栈简介

如下图所示,如果把 10 个盘子垒起来,其结果就称为堆栈。虽然有可能从这个堆栈的中间移出一个盘子,但是,更普遍…

汇编语言运行时堆栈(内存数组)

运行时堆栈是内存数组,CPU 用 ESP(扩展堆栈指针,extended stack pointer)寄存器对…

汇编语言PUSH和POP指令(压栈和出栈)

汇编里把一段内存空间定义为一个栈,栈总是先进后出,栈的最大空间为 64K。由于 "栈" 是…

汇编语言PROC和ENDP伪指令:定义一个过程

如果大家已经学过了高级编程语言,那么就会知道将程序分割为子过程(subroutine)是多么有用。一个复杂的问…