![]() |

Многие думают, что хорошую быстродействующую программу на 8-ми разрядной машине можно написать только в кодах процессора. Чаще всего так и делается, но как же быть если в программе должны производиться сложные вычисления, ведь проце- ссор может только складывать и вычитать небольшие целые числа, а обращение к программе-кальку- лятору в ПЗУ сопряжено с такими сложными подготовительными про- цедурами и различными нюансами, что может запутать и опытного программиста . В такой ситуации может помочь компилятор. Скорость выполнения скомпилиро- ванной программы, конечно, уступает скорости с которой работает программа написанная непосредственно в машинных кодах , но зато не возникает проблем с вычислениями и освоением особенностей ассемблера, ведь создание алгоритма программы на языке высокого уровня (BASIC'е например) гораздо проще. А о том каких можно достичь результатов говорит то, что даже многие фирменные программы представляют собой компиляции с языков высокого уровня. Мы были немало удивлены, обнаружив, что игра STACK UP фирмы ZEPPELIN GAMES, выпущенная в 1991 году, была написана почти полностью на BASIC'е и скомпилирована первобытным компилятором MCODER II 1982 года выпуска. Чтобы было понятно о чем идет речь - этот компилятор не понимает половины команд BASIC'а (их надо избегать в программе) и работает только с целыми числами от -З2768 до +З2768. Правда, ускорение он дает весьма значительное. Другой компилятор фирмы CRYSTAL COMPUTING выпуска 198З года понимает те команды, которые недоступны MCODER'у но отказывается компилировать другие. Дальнейшие поиски привели нас к программе TOBOS FP COMPILER и ее исследование показало, что это именно то, что нам было нужно![]()
![]()
![]()
![]()
![]()
функций). Компилятор понимает ВСЕ команды и операторы SPECTRUM-BASIC'а и работает с любыми числами, которые доступны BASIC'у, включая экспоненциальное пред- ставление и плавающую запятую. Программа BIORITM, целиком написанная на BASIC'е строит графики биоритмов примерно 20-25 секунд, а будучи скомпилирован- ной TOBOS'ом делает это за 1-2 секунды. Построение З-мерного векторного графика, занимавшее около 10 минут (!), сокращается до 0.5 минуты. Сам компилятор занимает около 12К и должен быть в памяти - без него скомпилированный код работать не будет. Впрочем, это относится ко всем упомянутым компиляторам. Главным ограниче- нием является невозможность обработки команд обращения к TR-DOS, так как в стандартном BASIC'е эти команды не были предусмотрены. Компилятор TOBOS располагается в памяти с адреса 5З100. Скомпилированный код размещается начиная с адреса RAMTOP, который устанавливается командой CLEAR NN. Запускается TOBOS командой RANDOMIZE USR 53100. Есть масса полезных самодельных программ на BASIC'е и TOBOS может стать мощным инструментом доведения их до фирменного вида. ___ ___(а нужно нам
было ускорить
выполнение
программы,
строящей на
экране
З-мерные
графики
Other articles:
|
|
|
|
|
|
Similar articles:
В этот день... 1 April
Info Guide #13,
ACNews #50,
Avro News #01,
ACNews #47,
ACNews #40,
ACNews #29,
Black Metall #01,
ACNews #16,
Adventurer #13,
Polesse #19,
Subliminal Extacy #03,
ZX Pilot #37,
Always #03,
Born Dead #0G,
Odyssey paper #08,
Optron #26,
City #08,
Zodiac #02,
Polesse #05,
Nicron #108,
X-Magazine #10,
Nicron #82,
Energy #01,
Sorrow News #03,
Sorrow News #02,
Proton #27,
Think #08,
Wallpaper #01,
Spectrum Progress #03,
Spectrum Expert #02,
Micro #01,
X-Files #02,
Gorodok #05,
Deja Vu #04,
Anecdotes #01,
X-Files #02,
Maximum #35,
Impulse #01,
Spectrofun #01,
Faultless #07,
Breeze #06,
Nicron #27,
Echo #03,
Oberon #01,
Spectrofon #19,
On-Line #30,
Sinclair Town #01,
Sinclair Classic #04,
Spectrofon #04