logo search
ZX-Review-1992-01-12

Общие сведения о Бейсике и машинных кодах

Микропроцессор Z80A, на базе которого сделан ZX SPECTRUM, не понимает непосредственно слова БЕЙСИКа. Такие, как PRINT, IF, TAB, и т. д. Вместо этого он выполняет приказы специального языка своего внутреннего машинного кода. Процедуры ПЗУ, которые придают SPECTRUMy его индивидуальность, написаны на этом специальном языке и состоят из большого количества стандартных подпрограмм для ввода вывода листинга, интерпретирования и выполнения команд BASICa и др.

Например, стандартные подпрограммы говорят процессору Z80A ("ЧТО ДЕЛАТЬ, ЕСЛИ..."). Если, например, команда BASICa слово PRINT, то что делать, если следующий элемент имя переменной; или что делать, если следующий элемент запятая и т. д.

Машинный код состоит из последовательности положительных целых чисел (от 0 до 255), которые диктуют действия для Z80A. Хотя машина использует двоичную форму представления чисел, нет необходимости для человека изучать команды в такой форме. Мы будем использовать десятичную форму, которая обрабатывается МС ЗАГРУЗЧИКОМ из Раздела В.

Однако даже однообразную строку десятичных чисел трудно интерпретировать и поэтому десятичные числа обычно преобразовываются в специальный язык (ассемблер), который представляет собой определенные аббревиатуры. Язык ассемблера называется так потому, что специальная программа, называемая АССЕМБЛЕРОМ, используется для обработки ("сбора или ассемблирования") команд в машинных кодах при написании (формировании) программы.

Требуется только одно число, чтобы точно определить простую команду Z80A. Например, команда СКОПИРОВАТЬ содержимое регистра C в регистр D это десятичное число 81 (термин "регистр" более детально описан в главе 3, а пока достаточно если Вы