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

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

18

Регистры 32‑битной части именуются

W0

W30;

операции над

Wn

пишут старшие биты

Xn

обнуляя (

zero

extend

).

Stack Pointer и спецификации

SP

Stack

Pointer

, 64‑бит (есть и

WSP

для 32‑бит операций).

SP

всегда должен быть выровнен по 16 байтам согласно

ABI

при вызове функций.

Используйте

FP

(

X

29) и

LR

(

X

30) для организации кадра, если нужен

frame

pointer

; многие компиляторы могут его не использовать (

frame

pointer

omission

).

Специальные регистры

NZCV

– флаги состояния

(Negative, Zero, Carry, oVerflow)

в регистре

PSTATE

, устанавливаются арифметическими/логическими инструкциями с суффиксом

S

(например

, ADDS).

PC

Program

Counter

(не адресуем напрямую как общий регистр, но читается/изменяется косвенно при ветвлениях).

PSTATE

– процессорное состояние (флаги и состояние исключений/режимов). Доступ ограничён; для чтения/записи используются специальные инструкции или системные привилегии.