码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言高级语言特性

时间:2019-11-23 16:19:56      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:优先   比较   条件   sharp   lse   单元   repeat   arp   htm   

条件控制伪指令:

格式:

.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 过程名 [,参数,……]

  

汇编语言高级语言特性

标签:优先   比较   条件   sharp   lse   单元   repeat   arp   htm   

原文地址:https://www.cnblogs.com/countfatcode/p/11918129.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!