汇编语言高级语言特性

Posted countfatcode

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编语言高级语言特性相关的知识,希望对你有一定的参考价值。

条件控制伪指令:

格式:

.if 条件表达式 ;条件为真执行分支体
  分支体
.elseif 条件表达式 ;条件为真执行分支体
  分支体
.else
  分支体
.endif

注意:

  • 条件表达式中操作符 ! 优先级最高,其次是 ==,!=, >, >= ,<, <=这些比较运算符,&& || 优先级最低,可以通过 () 改变运算顺序。
  • 条件表达式中,用dbdwdd定义的变量默认为无符号数,可用sbyteswordsdword定义有符号数
  • 条件表达式中,寄存器或常数默认为无符号数,可以sbyte ptrsword ptr指明,若其中一个数为有符号数,则强制另一个数作为有符号数进行比较

循环控制伪指令:

.while 条件表达式   ;条件表达式为真执行循环体
    循环体
.endw

  

.repeat
    循环体
.until 条件表达式   ;条件为真结束循环

  

.repeat 
    循环体
.untilcxz [条件表达式]

注意:

  • .repeat.untilcxz 循环中,条件表达式可选
  • 若无条件表达式,当cx -1 == 0时,结束循环
  • 若有条件表达式,当cx - 1 == 0或条件表达式为真结束循环
  • 条件表达式比较寄存器和寄存器,存储单元和寄存器,以及存储单元与常数相等或不等

过程声明和过程调用伪指令:

格式:

过程名 proc [调用距离] [语言类型] [作用范围] [<起始参数>] [USES 寄存器列表] [,参数:[类型]] [......]
   local 变量名 [个数] [:类型] [, ...] 过程体 过程名 endp

可以使用proto声明过程,语法为:

过程名 proto [调用距离] [语言类型] [,参数:[类型]] ……

与proto配合使用的过程调用伪指令:

invoke 过程名 [,参数,……]

  

以上是关于汇编语言高级语言特性的主要内容,如果未能解决你的问题,请参考以下文章

汇编语言高级语言特性

为什么说Java同时具有编译型语言和解释型语言的特性呢?

Rust编程语言入门之高级特性

什么是编程语言

C++语言的原理是啥?

阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第1节 常用函数接口_8_常用的函数式接口_Supplier接口