Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Предложения

Запись целых чисел в ассемблере

Идентификаторы

Основные понятия

Лекция 6. Базовые понятия языка.

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

Идентификаторы - символьные обозначения объектов программы: переменных, меток, названий операций и т.п. И. - последовательность из латинских букв (больших и малых), цифр и знаков?.@_$. Ограничения на И.

· длина может быть любой, но значащие - лишь первые 31 символ,

· не должен начинаться с цифры

· точка - только первым символом,

· одноименные большие и малые буквы - эквивалентны.

Русские буквы не допустимы. Делятся на служебные (зарезервированные - reserved) слова и имена. Первые определены заранее и имеют определенный смысл, например обозначают регистры (ах, cs) названия команд (mov, xor), все остальные И. называются именами и ими можно пользоваться по усмотрению.

Могут быть записаны в десятичной, двоичной, щестнадцатиричной и восьмиричной системах счисления. Десятичные числа записываются как обычно, или с добавлением буквы d. После двоичного числа добавляется b, после щестнадцатиричного - h, а после восьмеричного о или q. Если hex начинается с буквы (цифры, обозначаемой буквой), то перед ним обязательно должен стоять ноль.

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

· пробел обязателен между стоящими рядом идентификаторами и/или числами,

· внутри идентификаторов и чисел пробелы недопустимы,

· там где допустим один пробел, допустимо и несколько пробелов подряд.

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

Рассмотрим комментарии. Не отражаются на ходе выполнения программы, игнорируются компилятором и предназначены для людей. Могут быть любые символы. Комментарием считается любая строка, начинающаяся со знака; или пустая строка. Возможен многострочный комментарий COMMENT <маркер> <текст>. В качестве комментария берется первый за словом COMMENT символ, отличный от пробела COMMENT.

Команды. Это символьная форма записи машинных команд.

[<метка>:] <мнемокод> [<операнды>] [;<комментарий>]

Метка с двоеточием, а также точка с запятой и комментарий могут отсутствовать. Метка синтаксически - имя команды, ее можно использовать в командах перехода на данную команду. Если метка есть то после нее обязательно нужно двоеточие для ссылок, например для перехода на эту команду. Мнемокод (мнемонический код) является обязательной частью команды и указывает ту операцию, которую должна выполнить команда. Записывается в символьной форме. Операнды, если они есть отделяются друг от друга запятыми. Комментарий - после знака; не влияет на смысл команды, а лишь поясняет ее. Действителен для данной строки.

Регистры указываются своими именами, например:

MOV AX,SI;оба операнда - регистры

Непосредственные операнды задаются константными выражениями (их значениями являются константы-числа), например:

MOV BH,5;5 - непосредственный операнд

MOV DI,SIZE X;SIZE X (число байтов, занимаемых переменной X) -;непосредственный операнд

Адреса описываются адресными выражениями (например, именами переменных), которые могут быть модифицированы по одному или двум регистрам; например, в следующих командах первые операнды задают адреса:

MOV X,AH

MOV X[BX][DI],5

MOV [BX],CL

<== предыдущая лекция | следующая лекция ==>
Программные отладчики и их эксплуатация | Лекция 7. Базовые понятия языка
Поделиться с друзьями:


Дата добавления: 2014-01-15; Просмотров: 246; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.