Hello Puts


/*
 * Programa para escrever "Hello Puts"
 * usando a função puts da linguagem C.
 */

.equ	SYS_EXIT, 1

.data
.align 4
mensagem:
	.string	"Hello Puts"	// Mensagem a ser exibida.

.text
.global main
.global puts			// Função puts da linguagem C.

main:
        LDR	R0, =mensagem	// Primeiro parâmetro de puts.
        BL	puts
end:
	LDR	R7, =SYS_EXIT	// Número da chamada do sistema em R7 (terminar).
	SVC	0		// Chamar o sistema operacional.

Makefile:

hello_puts: hello_puts.o
	gcc -o hello_puts hello_puts.o
hello_puts.o: hello_puts.s
	as -o hello_puts.o hello_puts.s
clean:
	rm hello_puts.o hello_puts

Construção e execução:

pi@raspberrypi:~/assembly/hello_puts $ make clean
rm hello_puts.o hello_puts
pi@raspberrypi:~/assembly/hello_puts $ make
as -o hello_puts.o hello_puts.s
gcc -o hello_puts hello_puts.o
pi@raspberrypi:~/assembly/hello_puts $ ./hello_puts 
Hello Puts

↑ Acima