реклама
Бургер менюБургер меню

Андрей Ипполитов – Ассемблер ARM64 (страница 4)

18

16. Номер

4

соответствует системному вызову

SYS_write.

svc #0

: Инструкция

svc

(

supervisor

call

) инициирует системный вызов. Она передает управление ядру операционной системы, которое выполнит запрошенную операцию (в данном случае, запись данных в

stdout

).

#0

указывает

,

что это стандартный вызов

.

mov x0, 0

: Для системного вызова

exit (

завершение программы), регистр

x

0 содержит код возврата. 0 означает

,

что программа завершилась успешно

.

mov x16, 1

: Номер 1 соответствует системному вызову

SYS

_

exit

.

message:

: Метка для нашей строки.

.ascii "Hello,

World

!\n"

: Директива .

ascii

определяет строку, состоящую из

ASCII

–символов.

\n

– это символ новой строки

.

Глава 2 Синтаксис ассемблера

Эта глава даёт практический и структурированный обзор синтаксиса ARM64 (AArch64) для GAS. Пояснения охватывают секции, директивы, регистры, инструкции, адресацию, соглашение о вызовах и типичные идиомы. Основные понятия (регистры, память, инструкции)

Байт – это базовая единица измерения информации в компьютерах, состоящая из 8 бит. Каждый бит может принимать значение 0 или 1, поэтому байт может представлять 256 различных комбинаций (от 0 до 255 в десятичной системе) или в шестнадцатеричной системе (от 0 до FF)

D9

Hex D

Hex 9

1

1

0

1

1

0

0

1