Меню сайта

Урок 8. Синаксис языка Ассемблера

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

— — — — — Команда языка ассемблера состоит изчетырех частей. — Фиг. — 2.8
— — — показывает типичную команду ассемблера иназвания этих частей.

— — ———————————————————
— — — PART1: — — -ADD — — — — AX,BX — — — —Добавить к длине буфера
— — — Метка — — — -ОпКод — — Операнды — — — — — — -Комментарий
— — ———————————————————
— — — — — — — — — — — — — — — — — — — — — — — — — — Фиг. 2.8 Синтаксис языка ассемблера

— — — Единственная обязательная часть командыязыка ассемблера — ОпКод
— — — (сокращение от ОПерационный КОД). — Программисты иногда называют ма-
— — — шинные команды кодами операций.Операционный код в утверждении язы-
— — — ка асемблера определяет, какую опреациюдолжен будет выполнить про-
— — — цессор, в нашем примере — операциюсложения (по английски — add —
— — — прим. -перев.).

— — — — — Поле операндов содержит дополнительнуюинформацию о команде,
— — — например, какие значения участвуют воперации. — Поле операндов
— — — определяется операционным кодом. — Каждому коду операции должно
— — — соответствовать определенное числооперандов. — Для команды ADD
— — — требуется два операнда- операция переменызнака (NEG) обходится
— — — лишь одним, а для некоторых команд,например, команды десятичной
— — — коррекции DAA, операнды не нужны. — В главе 4 описаны эти команды и
— — — их операнды.

— — — — — Метка и комментарий необязательны — в команде. Поле метки позво-
— — — ляет -обозначить какое-либо — конкретноеместо — в памяти компьютера.
— — — Собственный — адрес имеется — — — — — у — любого -участка памяти, — но выделить
— — — адрес -какой — либо — команды -трудно, — если — вообще — — — — — возможно.Метка
— — — позволяет -идентифицировать -определенное — место — в памяти заданным
— — — программистом — именем. — Говоря — — технически, — поле — — — — — метки — содержит
— — — символический указатель — расположения команды. Если — мы хотим обра-
— — — титься к -этой команде позднее, — то мыделаем — это через символьное
— — — имя и -нам не требуетсся — указыватьабсолютное расположение — данной
— — — инструкции. Использование меток — одна изпричин предпочтительности
— — — языка -ассемблера — перед — машинным — — — языком. — Превращением же симво-
— — — лических имен в реальные адреса ведаетассемблер.

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

— — — — — У -каждого есть — собственноепредставление — о том, — как следует
— — — комментировать — программы, и — вы наверняка — тоже скоро -выработаете
— — — свое. Как -правило, вы будете — пытатьсявключать в — — — — — них информацию,
— — — которая -относится — непосредственно — к -решаемой — проблеме. — В при-
— — — веденном -примере — было — — бы -бессмысленно — комментировать — — — команду
— — — чем-нибудь вроде — «сложить AX и -BX». Это не — более, чемповторение
— — — операционного кода и операндов (разве — что в переводе с английского
— — — — прим.перев.). Если — уж вы намерены связаться — с комментариями, то
— — — делайте их достойными труда их написания ичтения.

Категория: Программирование на Ассемблере | Дата: 29.01.13

Меню раздела
Блок