ZX-Ревю 1991 №4-5 1990 г.

Маленькие хитрости - продолжаем разговор о простейших приемах, позволяющих экономить объем памяти.


Сегодня мы продолжаем разговор; о простейших приемах, позволяющих экономить объем памяти, необходимой для написания вашей программы. Если Вы даже и не пишете еще4

Еще большую экономию при работе с числами и другими типами переменных можно получить, если Вы знаете заранее, что изменяться в программе эти переменные не будут или если Вам эти изменения безразличны.

Когда Вы запускаете программу (RUN), то все переменные, которые есть в программе, копируются дополнительно в область переменных (VARS), т.е. они хранятся дважды. Почему бы их не хранить только в области переменных, конечно после того, как программа Вами отлажена и работает. Сделать это можно так. Попробуйте дать прямую команду LET a=10

Прямая команда вводится без номера строки и выполняется компьютером немедленно. Начиная с этого момента компьютер "помнит", что a равно десяти, хотя такой строки в программе и нет. Проверьте его командой PRINT a. Убедились? Помнит компьютер это число потому, что значение a хранится в области переменных. Посмотрите, как оно там хранится:

10 LET p = PEEK 23627+ 256* PEEK 23628: FOR f=p TO p+17: PRINT f,PEEK f : NEXT f

Вот только запускать эту строку командой RUN уже нельзя потому, что RUN перед началом работы удаляет из памяти все переменные и очищает стек. Общее правило - если Вы применяете переменные, которые хранятся в памяти, но не хранятся в программе, т.е. не выставляются программой, то вместо RUN можно использовать только GO TO, в данном случае запуск произведите командой GO TO 10.

Второе золотое правило - всегда выгружайте такую программу только с номером строки автостарта - SAVE "имя" LINE n. Тогда после загрузки программа начнет работать со строки n так, как будто бы прошла команда GO TO n, а не RUN.

И, наконец, простейшая рекомендация - если какое-то число используется в программе многократно, то лучше обозвать его именем какой-либо переменной и дальше вызывать по этому имени. И последнее - имена переменных из одной буквы расходуют значительно меньше места, чем из нескольких, хотя это нарушает читаемость программ. Поэтому такое изменение надо вводить, когда программа уже полностью отлажена. При этом можно удалить из программы и строки REM.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Turbo/Slow - Схема ускорялки и тормозилки компа.
Scene - ZX Spectrum в 1997 году: создание Спектрумовского клуба (в Питере)
Post... - Два наезда из разных городов.
Ликбез - Подробно о дисковых форматах, имеющих FAT.
Презентация - Презентация игр : Where Time Stood Stile, Кости-Покер, Весы.

В этот день...   21 ноября