下载安装 ADS1.2
效云高速直接下载
https://code.aliyun.com/734449600/ads1.2/repository/archive.zip?ref=master
百度龟速网盘
链接:
https://pan.baidu.com/s/1rLiZU7EKshd-T-YZUJTwuA
提取码:upi7
安装
下载完成后进行安装,
注意安装过程中,不要含有中文,括号等字符
最好在c盘下直接创建 arm 安装到这里
安装license
选择安装包中crack 中的license.dat
添加crack
把解压后的 crack文件 拷贝到
安装目录下 和 bin同一个层次
设置兼容运行
右键运行图标
在属性中设置兼容 xp 模式,以及管理员运行
创建项目
选择左上角 file -》 new
点击确定,来到
书写代码
保存为 code1.s ,预期执行结果,计算 sum(1-7) = 28
N EQU 7
AREA Adding,CODE,READONLY
ENTRY
MOV R0,#0
MOV R1,#1
REPEAT ADD R0,R0,R1
ADD R1,R1,#1
CMP R1,#N
BLE REPEAT
LDR R2,=RESULT
STR R0,[R2]
HERE B HERE
AREA Sundata,DATA,READWRITE
RESULT DCD 0
END
完成后保存
添加源文件
自动出现
代码讲解
代码格式
arm 汇编 中 对格式要求比较严格,不像 x86 一样宽松
指令一律在 开头添加空格书写,
标号,变量一律 顶格书写
书写不对会弹出 ERROE UNKNOW OPCODE
代码内容说明
;赋值语句
N EQU 7
; 添加 叫做 CODE 的 只读 readonly 代码段
AREA Adding,CODE,READONLY
;开始
ENTRY
;设置 r0 =0 立即数
MOV R0,#0
;设置 R1 =1 立即数
MOV R1,#1
; 定义 循环 标号 repeat
REPEAT ADD R0,R0,R1 ; 把 r0 r1 相加保存到 r0
; r1=r1+1 寄存器加立即数
ADD R1,R1,#1
;比较 变量 N 和 R1 内容的 大小
CMP R1,#N
;Branch if Less than or Equal, 即小于或等于 跳转 到 repeat 标号
BLE REPEAT
; 把 result 地址放到 r2 中
LDR R2,=RESULT
; 把 r0 中的运算 结果 保存到 r2 所指 地址空间 ,即 -》 result 中
STR R0,[R2]
; 起始地址存储单元
HERE B HERE
; 定义数据段 data 可读可写
AREA Sumdata,DATA,READWRITE
;DCD:数据定义( Data Definition )伪指令
;一般用于为特定的数据分配存储单元,同时可完成已分配存储单元的初始化
RESULT DCD 0
END
其他常见指令拓展
改天再更