Язык Ассемблера SPARC/Hello World 1: различия между версиями
Содержимое удалено Содержимое добавлено
Jsg08 (обсуждение | вклад) Новая страница: «==Пример 1: Вывод "Hello World!"== <source lang="asm"> .section ".data" hello: .asciz "Hello World!\n" .section ".text" .align 4 .global main main: sa...» |
(нет различий)
|
Версия от 00:49, 26 августа 2009
Пример 1: Вывод "Hello World!"
.section ".data"
hello: .asciz "Hello World!\n"
.section ".text"
.align 4
.global main
main:
save %sp, -96, %sp ! выделяем память
mov 4, %g1 ! 4 = WRITE (системный вызов)
mov 1, %o0 ! 1 = STDOUT
set hello, %o1
mov 14, %o2 ! количество символов
ta 8 ! вызов системы
! выход из программы
mov 1, %g1 ! move 1(exit() syscall) into %g1
mov 0, %o0 ! move 0(return address) into %o0
ta 8 ! вызов системы
В этом примере используется системный вызов ta 8
для вывода символов и при выходе из программы.
Также для вывода строк можно использовать системную функцию printf.