50 lines
2 KiB
Plaintext
50 lines
2 KiB
Plaintext
|
|
.текст
|
|||
|
|
.глобал _start
|
|||
|
|
|
|||
|
|
_start:
|
|||
|
|
; =============================================
|
|||
|
|
; ТЕСТ 1: Абсолютная адресация
|
|||
|
|
; =============================================
|
|||
|
|
переместить_имм раикс, 0x42
|
|||
|
|
сохранить [абс_данные], раикс
|
|||
|
|
|
|||
|
|
; =============================================
|
|||
|
|
; ТЕСТ 2: Косвенная адресация
|
|||
|
|
; =============================================
|
|||
|
|
переместить_имм рбикс, косв_данные
|
|||
|
|
переместить_имм раикс, 0x99
|
|||
|
|
сохранить [рбикс], раикс
|
|||
|
|
|
|||
|
|
; =============================================
|
|||
|
|
; ТЕСТ 3: Ещё одна косвенная адресация
|
|||
|
|
; =============================================
|
|||
|
|
переместить_имм рсикс, ещё_данные
|
|||
|
|
переместить_имм раикс, 0x77
|
|||
|
|
сохранить [рсикс], раикс
|
|||
|
|
|
|||
|
|
; =============================================
|
|||
|
|
; Читаем всё обратно
|
|||
|
|
; =============================================
|
|||
|
|
загрузить р8, [абс_данные]
|
|||
|
|
загрузить р9, [рбикс]
|
|||
|
|
загрузить р10, [рсикс]
|
|||
|
|
|
|||
|
|
; =============================================
|
|||
|
|
; ЗАВЕРШЕНИЕ: возвращаем из абсолютной переменной
|
|||
|
|
; =============================================
|
|||
|
|
загрузить рдиай, [абс_данные]
|
|||
|
|
переместить_имм раикс, 60
|
|||
|
|
вызов_системы
|
|||
|
|
|
|||
|
|
.данные
|
|||
|
|
абс_данные:
|
|||
|
|
.байт 0
|
|||
|
|
косв_данные:
|
|||
|
|
.байт 0
|
|||
|
|
ещё_данные:
|
|||
|
|
.байт 0, 0, 0, 0, 0, 0, 0, 0
|
|||
|
|
|
|||
|
|
.бнд
|
|||
|
|
буфер: .резб 1048576 ; 1 МБ = 1024 * 1024
|
|||
|
|
переменная: .резкс 1 ; 8 байт под длину
|
|||
|
|
буфер_строки: .резкс 1 ; 8 байт под указатель на строку
|