Technophobia: Компиляция вашего BASIC

Sinclair Classic #10

Technophobia: Компиляция вашего BASIC

Все мы через это проходили. Будь то серьезная попытка пробиться в индустрию программного обеспечения, желание чему-то научиться или просто ради забавы — большинство владельцев Spectrum на каком-то этапе пытались написать компьютерную игру. К сожалению, результаты обычно получаются довольно плачевными. Проблема в том, что среднестатистический владелец Spectrum знает о программировании столько же, сколько большинство болельщиков Manchester United о футболе — то есть почти ничего. Знание основ BASIC — это, как правило, предел. Как мы все прекрасно знаем, Sinclair BASIC работает не очень быстро. Единственный другой вариант — написать программу на машинном коде, но это может быть действительно очень сложно. Насколько проще было бы написать программу на BASIC, а затем автоматически преобразовать её в машинный код. Ну, хотите верьте, хотите нет, но вы можете это сделать. Всё, что вам нужно — это компилятор BASIC.

Компиляторы — это очень умные программы, которые преобразуют код, написанный на одном языке, в другой. Машинный код выполняется намного быстрее: прирост скорости сильно варьируется в зависимости от используемого компилятора и приложения, но обычно он работает от 5 до 100 раз быстрее оригинальной программы на BASIC. В чём же подвох? Ну, ни один компилятор не скомпилирует абсолютно любую программу, так как не все ключевые слова и функции распознаются. Многие из них не позволяют использовать массивы или строковые переменные, а некоторые ограничивают вас использованием переменных с однобуквенными именами. Более того, большинство из них не позволят вам запустить скомпилированную программу, если компилятор не находится в памяти одновременно с ней. Это означает, что для распространения скомпилированной программы компилятор должен быть скопирован тоже, что почти наверняка нарушает авторские права. Еще один момент, заслуживающий упоминания: любые графические данные или процедуры на машинном коде, хранящиеся внутри операторов REM, будут потеряны — именно так SC хранит всю графику, используемую в каждом выпуске, так что вы не сможете скомпилировать лучший tapezine на свете!

Если вы хотите поэкспериментировать с компилятором, вы найдете его в конце этого фэнзина. Он не особо сложный, но, по крайней мере, созданный им код не требует присутствия компилятора в памяти для работы. Попробуйте — может быть, вы станете следующим Pete Cooke... (Jonathan Cauldwell).

Присылайте свои проблемы с программированием в Technophobia по адресу: c/o 2 Belvoir Rd, Nottingham NG2 5DL, и наш JC постарается сделать ваш мир чуточку лучше. Впрочем, вам лучше так и поступить, поскольку он обходится нам в 75 фунтов в час только на то, чтобы снабжать его лагером и арахисом. Два программных файла, прилагаемых к этому фэнзину: TUTOR и TURBO.

Поделитесь вашим мнением о статье