ZXNet эхоконференция «code.zx»


тема: Конечно наверное это не очень



от: Valery Grigoriev
кому: All
дата: 20 Nov 2005
Hello, GriV

эффективно (в смысле затрат памяти) - использовать символьные имена для работы
с п/п ПЗУ :D (я бы даже более сказал :D) однако имеет право на жизнь хотя бы
потому, что такие функции никогда не перекроют друг друга.
Hапример:

call PrintChar

А если взять безликий

RST 16
defb 81
defb 12

то тому, кто будет писать такую п/п будет необходимо будет держать в руках
справочник чтобы смотреть соответствие между вызываемой функцией и её байтами
описателями (те самые defb) - такую работу должен выполнять не программист, а
машина.
Да и запомнить символьное имя PrintChar в любом случае проще.
Кроме того, символьные имена хорошо жмутся (5 бит используют из 8, если даже
взять спецсимволы то 6 бит из 8, или скажем обработать хаффманом), так что
трёхсимвольное имя будет кушать практически столько же места сколько вызов
через DefB.

P.S. Под перекрытием я подразумеваю возможность вызова разных функций при том
же синтаксисе - PrintChar либо не оттранслируется вообще, потому что нет такой
функции, либо будет транслироваться замечательно. Rst Defb Defb при смене
набора функций придётся отслеживать. Первый Defb отвечает за группу функций -
если после обновления версии случилось так что группа расширилась за 256
значений функций, то придётся ещё один номер группы резервировать и это в свою
очередь головняк и головняк




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

Похожие статьи:
Обмен опытом - метод, который из 100%-80% дискет восстанавливает.
От авторов - Редакция.
Demoscene - Forever 5 report: репортаж Factor6 с Словацкого пати.
Калейдоскоп - новости из мира Спектрума.
Белый попугай - Агент 008.

В этот день...   24 апреля