тесты адресации

This commit is contained in:
mzhoot 2026-05-25 18:51:03 +03:00
parent 99579d2538
commit 94f8cdb71a
3 changed files with 63 additions and 0 deletions

View file

@ -0,0 +1,20 @@
; тестирует абсолютную адресацию по адресу
; не вылетел - значит работает (дополнительно проверить отладчиком)
; ./тесты/тест_адресации1.elf
; echo $? # выведет 42
.текст
.глобал _start
_start:
; Запись значения 42 в переменную по адресу 0x402000
переместить_имм раикс, 42
сохранить [0x402000], раикс
; Завершение с кодом 42 (читаем из переменной)
переместить_имм раикс, 60
загрузить рдиай, [0x402000]
вызов_системы
.данные
тестовая_переменная: .байт 0

View file

@ -0,0 +1,20 @@
; тестирует абсолютную адресацию по метке
; не вылетел - значит работает (дополнительно проверить отладчиком)
; ./тесты/тест_адресации2.elf
; echo $? # выведет 43
.текст
.глобал _start
_start:
; Запись значения 43 в переменную по метке
переместить_имм раикс, 43
сохранить [переменная], раикс
; Завершение с кодом 43
переместить_имм раикс, 60
загрузить рдиай, [переменная]
вызов_системы
.данные
переменная: .байт 0

View file

@ -0,0 +1,23 @@
; тестирует косвенную адресацию через регистр
; не вылетел - значит работает (дополнительно проверить отладчиком)
; ./тесты/тест_адресации3.elf
; echo $? # выведет 99
.текст
.глобал _start
_start:
; Загружаем адрес переменной в регистр RBX
переместить_имм рбикс, переменная
; Запись значения 99 в переменную через косвенную адресацию
переместить_имм раикс, 99
сохранить [рбикс], раикс
; Завершение с кодом 99 (читаем из переменной через косвенную адресацию)
переместить_имм раикс, 60
загрузить рдиай, [рбикс]
вызов_системы
.данные
переменная: .байт 0