logo
ZX-Review-1992-01-12

8.1Определение размера свободной памяти.

Длина: 14 Количество переменных: 0

Контрольная сумма: 1443 Назначение:

Дает количество свободного пространства ОЗУ в байтах. Вызов программы.

PRINT USR адрес

Контроль ошибок: Нет Комментарий:

Эта программа должна вызываться перед использованием любых подпрограмм, которые могут увеличивать длину программы, чтобы быть уверенным в том, что в ОЗУ достаточно свободного пространства.

 

ЛИСТИНГ МАШИННЫХ КОДОВ

 

 

МЕТКА

АССЕМБЛЕР

ЧИСЛА ДЛЯ ВВОДА

 

LD HL,0

33

0

0

 

ADD HL,SP

57

 

 

 

LD DE,(23653)

237

91

101 92

 

AND A

16

 

 

 

SBC HL,DE

237

82

 

 

LD B,H

68

 

 

 

LD C,L

77

 

 

 

RET

201

 

 

Как она работает:

В пару регистров HL загружается 0 и это значение суммируется с адресом конца свободной области ОЗУ (адрес хранится в SP). Пара регистров DE загружается адресом начала свободной области ОЗУ и вычитается из HL. HL копируется в BC и программа возвращается в БЕЙСИК.

Yandex.RTB R-A-252273-3
Yandex.RTB R-A-252273-4