工程依赖关系与Makefile规则案例
# Makefile Example for Math
math : main.o display.o plus.o minus.o multi.o divide.o mod.o
gcc -o math main.o display.o plus.o minus.o multi.o divide.o mod.o
main.o : main.c defs.h display.h
gcc -c main.c
display.o : display.c defs.h display.h
gcc -c display.c
plus.o : plus.c defs.h
gcc -c plus.c
minus.o: minus.c defs.h
gcc -c minus.c
multi.o: multi.c defs.h
gcc -c multi.c
divide.o: divide.c defs.h
gcc -c divide.c
mod.o: mod.c defs.h
gcc -c mod.c
.PHONY: clean
clean :
-rm main.o display.o plus.o minus.o multi.o divide.o mod.o
用GNU ARM汇编程序设计实现20的阶乘,并将其64位结果放在R9和R8寄存器中(其中R9放高32位,R8放低32位)
.global _start
.text
_start:
MOV R8, #20@低32位初始化为20
MOV R9,#0@高32位初始化为0
SUB R0,R8,#1@初始化计数器
Loop:
MOV R1,R9@暂存高位值makefile phony
UMULL R8,R9,R0,R8@[R9:R8]=R0*R8
MLA R9,R1,R0,R9@R9=R1*R0+R9
SUBS R0,R0,#1@计数器递减
BNE Loop@计数器不为0时继续循环
.Stop:
B Stop
.end@文件结束

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。