Обзор приемов программирования на ассемблере

1.1. Программирование арифметических выражений.

Программа на языке Ассемблер состоит из операторов (команд) . Каждый оператор занимает одну строку. Общий вид оператора:

,

Некоторые операторы могут содержать только один из операндов.

Пример наиболее часто встречающейся команды:

Mov ax,x

Команда копирует содержимое переменной (операнда) x в регистр процессора ax. Соответствует команде в языке Паскаль:

Ax:=x;

Операторы языка Ассемблер не допускают использования двух переменных в качестве операндов для команды, т. е. команда

mov x,y { в Паскале x:=y}

где x и y – переменные, недопустима. Следует писать:

Mov ax,x

Mov y,ax

В данном курсе рассмотрена арифметика для целых двоичных чисел. В табл. 1 представлены основные команды для выполнения арифметических операции, а в табл. 2 — дополни тельные .

Таблица 1 Двоичная арифметика.

Обозначения, используемые в таблице :

on 1, on 2, on — операнды, т.е. содержимое, стоящее по первому (оп 1), второму (оп 2) адресам или единственный операнд (on); al, ah, ax, dx, eax, edx — регистры, причем eax, edx допустимы только для процессоров 80386 и выше.

Как видно из табл. 1, в командах умножения и деления задается один операнд, второй сомножитель или делимое в фиксированных регистрах. Команда умножения возвращает результат в два раза длиннее сомножителей, команда деления требует, чтобы делимое было в два раза длиннее делителя.

Результатом выполнения команды деления являются частное (регистр, записанный первым в таблице) и остаток (регистр, записанный вторым).

Если перед кодом стоит буква i(imul, idiv, i-integer-целый), операции выполняются с учетом знаков исходных данных, в противном случае — беззнаковые операции.

ПРИМЕР: Вычислить значение выражения x=y+(z-u*v)/w, если исходные данные занимают одно слово.

Рандомно подобранные статьи с сайта:

Язык Assembler. Знакомство и особенности программирования [GeekBrains]


Похожие статьи:

  • Программирование на ассемблере

    Общие сведения Текст исходной программы состоит из операторов ассемблера, каждый из которых занимает отдельную строку этого текста. Различают два типа…

  • Обзор языков программирования

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

  • Обзор языков программирования в интранет

    Эффективность использования Intranet (КВС) зависит от успешного решения как технологических, так и организационных вопросов в аспекте программного…

admin