Как написать игру для ZX Spectrum на ассемблере

       

СТРУКТУРА АССЕМБЛЕРНОЙ СТРОКИ



СТРУКТУРА АССЕМБЛЕРНОЙ СТРОКИ

Как и в любом другом языке, программа на ассемблере начинается с набора исходного текста. Наверное, нет надобности говорить, что для этих целей редактор Бейсика, встроенный в компьютер, совершенно непригоден. Посему в первую очередь необходимо освоить специальный редактор ассемблерных текстов, в который вы попадаете сразу после запуска GENS. В этой главе мы научим вас вводить строки программы, просматривать полученный текст и, наконец, транслировать готовую программу.

Прежде всего нужно сказать о структуре строк исходного текста программы на ассемблере. Они состоят из нескольких полей и имеют следующий формат:

Номер Поле меток Поле мнемоник Поле операндов 12345 LABEL LD BC,1000

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

Рассмотрим назначение каждого их этих полей.

Хотя строки в программах для GENS и нумеруются, но в ассемблере ссылки на номера строк, в отличие от Бейсика, нигде не применяются. Нумерация нужна исключительно для определения очередности следования строк, вывода листинга на экран или принтер и для вызова строк на редактирование. Допустимые значения этого поля - от 1 до 32767.

Но как же, спросите вы, в ассемблере отмечаются точки переходов, как обозначаются начала подпрограмм и данных, если отсутствуют ссылки на номера строк? Просто в ассемблере для этого используется другая методика, гораздо более удобная, как вы почувствуете позже. Здесь для любого рода ссылок используются специальные имена, задаваемые программистом, которые называются метками. Метки записываются в следующем после номера строки поле - в поле меток. Конечно, это поле не обязательно должно заполняться в каждой строке. Метки расставляются только там, где в них действительно возникает необходимость. Дальше мы более подробно поговорим о них и вообще о методах адресации, а пока перейдем к следующему полю строки.

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

Если у команды имеются какие-либо операнды, они записываются в следующем и последнем поле строки - в поле операндов. Таким образом полная команда может занимать в строке программы одно или два поля.



Содержание раздела