找回密码
 注册
关于网站域名变更的通知
查看: 597|回复: 5
打印 上一主题 下一主题

ARM汇编语言程序中常用的符号

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-6-3 11:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
在汇编语言程序设计中,经常使用各种符号代替地址、变量和常量等,以增加程序的可读性。尽管符号的命名由编程者决定,但并不是任意的,必须遵循以下的约定:
— 符号区分大小写,同名的大、小写符号会被编译器认为是两个不同的符号。

9 [, ?9 S5 y, M$ m1 V
— 符号在其作用范围内必须唯一。
! [- Y* E) _# _( L' m' R' H( Q
— 自定义的符号名不能与系统的保留字相同。

3 m% B) W# {% G% v" }% k" ?  d3 `
— 符号名不应与指令或伪指令同名。

7 g0 [9 r4 Z1 U# I. w. y! w9 [9 @
1、 程序中的变量

' m8 }& a5 Z- |' x" s
程序中的变量是指其值在程序的运行过程中可以改变的量。 ARM ( Thumb )汇编程序所支持的变量有数字变量、逻辑变量和字符串变量。

* \! K/ U: Z; R' k+ D/ W1 P
数字变量用于在程序的运行中保存数字值,但注意数字值的大小不应超出数字变量所能表示的范围。

- G# ]" G9 k/ E( X
逻辑变量用于在程序的运行中保存逻辑值,逻辑值只有两种取值情况:真或假。

: q4 {1 q, C! g2 ?
字符串变量用于在程序的运行中保存一个字符串,但注意字符串的长度不应超出字符串变量所能表示的范围。

/ ?4 B& J/ y, g" I  T
在 ARM ( Thumb )汇编语言程序设计中,可使用 GBLA 、 GBLL 、 GBLS 伪指令声明全局变量,使用 LCLA 、 LCLL 、 LCLS 伪指令声明局部变量,并可使用 SETA 、 SETL 和 SETS 对其进行初始化。
+ v: U2 y9 j8 V% S  K; @
2、 程序中的常量
7 U+ h' B9 \. J/ j# H; R
程序中的常量是指其指在程序的运行过程中不能被改变的量。 ARM ( Thumb )汇编程序所支持的常量有数字常量、逻辑常量和字符串常量。
  N5 @% ?4 P  y$ ~  C
数字常量一般为 32 位的整数,当作为无符号数时,其取值范围为 0 ~ 2 32 -1 ,当作为有符号数时,其取值范围为 -2 31 ~ 2 31 -1 。

6 k8 l7 o' @8 u# i& K5 F3 A
逻辑常量只有两种取值情况:真或假。
7 E1 ~0 x: l3 \2 e! V: h/ ^
字符串常量为一个固定的字符串,一般用于程序运行时的信息提示。
# `4 e+ i) Z% O$ w
3、 程序中的变量代换

( ~6 T( u( o" E
程序中的变量可通过代换操作取得一个常量。代换操作符为 “ $ ” 。

" H* v$ \" O( Z- X3 ^
如果在数字变量前面有一个代换操作符 “ $ ” ,编译器会将该数字变量的值转换为十六进制的字符串,并将该十六进制的字符串代换 “ $ ” 后的数字变量。

3 N) r7 |5 k- k4 G% |% O  T. E
如果在逻辑变量前面有一个代换操作符 “ $ ” ,编译器会将该逻辑变量代换为它的取值(真或假)。
2 s, f0 c; Q) I1 s0 D
如果在字符串变量前面有一个代换操作符 “ $ ” ,编译器会将该字符串变量的值代换 “ $ ” 后的字符串变量。

% M) P  q+ i4 q% b6 ?; s! n+ I
使用示例:

) I3 Z/ v/ N% {8 V5 r8 R3 J  d3 Z
LCLS S1 ;定义局部字符串变量S1 和S2

' F% \# r' V3 R2 R
LCLS S2

* H; a" Q* ~, y& ?& J
S1 SETS “ Test! ”

5 {! ~) a# r0 e. m7 N1 Y
S2 SETS “ This is a $S1 ” ;字符串变量S2 的值为 “ This is a Test! ”
/ k- X3 M* {3 n; b
  • TA的每日心情
    开心
    2022-12-5 15:37
  • 签到天数: 2 天

    [LV.1]初来乍到

    2#
    发表于 2021-6-3 13:11 | 只看该作者
    符号的命名由编程者决定,但并不是任意的

    该用户从未签到

    3#
    发表于 2021-6-3 15:04 | 只看该作者
    程序中的变量是指其值在程序的运行过程中可以改变的量
  • TA的每日心情
    慵懒
    2022-12-26 15:28
  • 签到天数: 1 天

    [LV.1]初来乍到

    4#
    发表于 2021-6-3 15:08 | 只看该作者
    我把这个$ 符号看成了钱的符号,哈哈
  • TA的每日心情
    奋斗
    2025-1-1 15:26
  • 签到天数: 584 天

    [LV.9]以坛为家II

    6#
    发表于 2021-6-6 14:29 | 只看该作者
    好好学习,天天向上
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 13:31 , Processed in 0.140625 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表