Главная » Просмотр файлов » Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002)

Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248), страница 67

Файл №1186248 Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002)) 67 страницаБройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248) страница 672020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 67)

Формат: ез1 орг. Модификаторы присваивания атрибута; ° рс г — изменяет атрибут типа (ьусе, ного или оногс) операнда или атрибут дистанции (пезг или 1аг) адресного операнда. Формат ткп рсг орг. (здесь тип— новый атрибут, орг — идентификатор операнда, чей атрибут должен быть изменен); ° ож, ез:, свд зз: — изменяет атрибут сегмента адреса. Формат: гзедп: адрес. (адрес может быть задан именем сегмента, переменной, меткой или адресным выражением); ° заог1 — дополняет атрибут пеаг метки оператора перехода, указывает, что переход осушествляется на расстояние не более +128 байт от текущей команды. Формат: зЬогг ветка; ° М дЬ вЂ” возвращает старший байт 16-битового значения орг. Формат: М дЬ орг; ° 1он — возвращает младший байт 16-битового значения орг.

Формат: 1он орг. В программах используются: 0 атрибуты дистанции: ° пеаг — близкий, в пределах одного сегмента; ° айаг — далекий, за пределами одного сегмента; сз атрибуты типа данных: ° Ьусе — длиной 1 байт; ° ного — длиной 2 байт; ° оного' — длиной 4 байт. гав Глава 9. Программное п веление — основа автоматизации Адресация регистров и ячеек памяти в ассемблере При программировании на языке ассемблер используются неявный, непосредственный, прямой н косвенный методы адресации; причем для адресации регистров в МПП вЂ” только прямой, а для адресации ячеек ОП вЂ” прямой, косвенный и смешанный непосредственный методы, Рассмотрим их на примере адресации второго операнда в команде МОЪ' (цереслать).

Непосредственная адресация Величина операнда[(ппрепдепсе) непосредственно указывается в иоле команды и может быть задана числом в десятичной, двоичной и шестнадцатеричной системах счисления (последний символ числа должен быть, соответственно, П (или никакой), В и Н) или идентификатором, а также простым выражением, в котором указанные элементы связаны символами арифметических операций: +, —, * и !. Идентификатор (с соответствующим именем, например, сопзт) должен быть предварительно задан в программе директивой типа: сопзт есц 1024 или сопзс - 1024. Примеры непосредственной адресации: МОЧ АХ.10240; МОЧ АШ64. МОЧ ВХ,1АН; МОЧ СН.1011В.

МОЧ АХ.сопзм МОЧ АХ,156*10Н/2 ит. п. Следует помнить, что диапазон чисел, посылаемых в регистры, должен быть ограничен вместимостью последнего: в 1-байтовый регистр (АН, А1., ВН и т. д.) можно посылать числа в диапазоне от О до +255 (целое без знака) или от — 128 до +127 (целое со знаком); в 2-байтовый регистр (АХ, ВХ, СХ н т, д.) — от О до +65535 (целое без знака) или от — 32768 до +32767 (целое со знаком).

Прямая адресация регистров МПП В качестве адреса операнда указывается имя регистра (его символьное обозначение: АХ, А), АН, ВХ, В1 и т. д.). Примеры: МОЧ АХ,ВХ МОЧ ВХ.ОХ МОЧ АН ВС Необходимо следить, чтобы разрядность второго операнда (его репштра) соответствовала разрядности принимающего регистра. Адресация ячеек ОП Напомним, что абсолютный (полный, физический) адрес (А„г,) в общем случае является суммой адресов сегмента (А„...) и исполнительного адреса (А„„,), в свою очередь, формируемого как сумма максимум трех адресов: смещения (А,„...), базы (А4.

) и индекса (А„„,), то есть: Аг, =А,,„„+А„„, =А,„,„+А,„„„,[+Ац,„][+А„„,1 Элементы программирования на языке ассемблер гв7 Прямая адресация ячеек ОП имеет несколько вариантов: а прямая обычная: МОН АХ, ро1е тле ро1 е — символьное имя переменной Х, для которой в ОП были предварительно отведены (или зарезсрвироваиы) ячейки памяти директивами типа: ро1е ОВ Х ро1е ОН Х и т. п. В команде в качествеА.„, берется А,„,„, первой ячейки поля, отведенной для переменной Х; сз прямая с индексированием: МОН АХ.ро1еС511 Ака = Асегм + ~Льыи1 1- Ас-в В команде в качестве Л„„, берстся Л„„, = А,,„, + А„„„,Амк находится в регистре В1); сх прямая с базированием: МОН Ах.ро1е1ВХ) А, = А, „ + Аг .,Аг.

находится в регистре ВХ; Ох прямая с индексированием и базированием: МОН АХ,ро1е[51+ВХ) А„„,-Л, +А„„,+АА °, Существует два варианта косвенной адресации ячеек ОП: Ох косвенная обычная: МОН АХАВХ) Исполнительный адрес берется в регистре ВХ, то есть А„„, = (ВХ11 ОХ косвенная с индексированием: МОН АХ ЛВХ+511 Исполнительный адрес берется в виде суммы адресов, находящихся в регистрах ВХ и 31, А„„, -1ВХ) + 1БЦ. Смешанная непосредственная адресация ячеек ОП имеет несколько вариантов: Ох непосредственная обычная: МОН Ах.о11зет ро1е В качестве операнда берется непосредственно смещение адреса первой ячейки поля памяти, отведенного для переменной Х; ОН15рг указывает, что берется не значение переменной Х, а именно смещение ее адреса; Ы непосредственная с индексированием: МОН АХА5!~сопзт) В качестве операнда берется сумма значения, хранящегося в регистре 31, и величины сопзь: сопзг может быть задано числом, идентификатором, смешением адреса переменной (ОЛзес ро1е) или их комбинацией — простым выраженисм; 288 Глава 9.

Прог аммиое правление — основа автоматизации СХ непосредственная с базированием: ИОЧ Ах.[Вх+соозг! Агпщогичио предыдущему варианту, но вместо регистра Б! берется ВХ; [з непосредственная с базированием и индексированием: ИОЧ Ах,ро1е[51+Вх+соозт! Аналогично предыдущему, но вместо содержимого одного регистра берется сумма содержимого регистров ВХ и 51.

Почти все команды ассемблера за редким исключением (исключения: РОР, Р05Н, САН., НЕТ, 1ВЕТ) в качестве А,,.„, обычно используют по умолчанию адрес, находящийся в регистре ЕХЯ (в исполняемых программах типа .солх — в регистре СЯ); но регистр сегмента может быть задан и явно, например: ИОЧ АХ,ЕХ.ро1е, ИОЧ АХ,55:[51! ит. и. Последняя команда, в частности, позволяет реализовать прямой доступ к ячейке стековой памяти, стек при этом не изменяется.

Команды РОР, Р05Н, СА[[, НЕТ, !НЕТ используют сегмент стека (регистр ВВ). Основные команды языка ассемблер По назначению можно выделить команды (в скобках приводятся примеры мнемонических кодов операций команд ассемблера ПК типа 1ВМ РС): [О выполнения арифметических операций (АОО и АОС вЂ” сложения и сложения с переносом, 50В и 5В — вычитания и вычитания с заемом, ИОЕ и 1И0[ — умножения без знака и со знаком, О!у и 10! Ч вЂ” деления без знака и со знаком, СМР— сравнения и т.

д ); О выполнения логических операций (Ой, АНО, НОТ, ХОР, ТЕ5Т и т. д.); СХ пересылки данных (МОЧ вЂ” переслать, ХСН — обменять, 1М вЂ” ввести в микропроцессор, 00Т вЂ” вывести из микропроцессора и т. д.); [з передачи управления (ветвления программы: ОИР— безусловного перехода, СА[С вЂ” вызова процедуры, НЕТ вЂ” возврата из процедуры, О* — условного перехода, [СОР— управления циклом и т. д.); [а обработки строк символов (ИОЧ5 — пересылки, СМР5 — сравнения, [005 — загрузки, 5СА5 — сканирования, ВЕР— повторения и т.

д.); [О прерывания работы программы (1МТ вЂ” программные прерывания, 1МТΠ— условного прерывания при переполнении, 1ВЕТ вЂ” возврата из прерывания); СХ управления микропроцессором (5Т* и СЕ* — установки и сброса флагов, Н[Т— останова, НА!Т вЂ” ожидания, Е5С вЂ” выхода, НОР— холостого хода и т. д.). С полным списком команд ассемблера можно познакомиться в работах [1, 3, 111. Команды пересылки данных Основш ~е команды пересылки данных: сх ИОч Оэ[,эгс — пересылка данных (шоче — переслать из эгс в Оэт). 289 Элементы программирования на языке ассемблер Пересылает'. один байт (если Вгс и (150 имеют формат байта) или одно слово (если згс и 050 имеют формат слова) между регистрами или между регистром и памятью, а также заносит непосредственное значение в регистр или память.

Операнды 050 и згс должны иметь одинаковый формат — байт или слово. 5гс могут иметь тип; г (гед15 (ег) — регистр, е (гзепогу) — память, з (гагре((зисе)— непосредственное значение. 051 могут быть типа г, ш. Нельзя в одной команде использовать операнды: гзедзг совместно с и два операнда типа е и два операнда типа гзедзг.

Операнд 1 может быть и простым выражением; яот ЯХ. 155*10Н яот ЯХ. (152е10151!15 ит. п. Вычисление выражения выполняется только при трансляции. Флаги не меняет. (З Р05Н згс — занесение слова в стек (роВН вЂ” протолкнуть; записать в стек из згс). Помещает в вершину стека содержимое згс — любого 16-битового регистра (в том числе и сегментного) или двух ячеек памяти, содержащих 16-битовое слово. Флаги не меняются. с( РОР 051 — извлечение слова из стека (рор — вытолкнуть; считать из стека в 051).

Снимает слово с вершины стека и помещает его в 051 — любой 16-битовый регистр (в том числе и сегментный) или в две ячейки памяти. Флаги не меняются. В командах Р05Н и РОР (051 и Вгс) они могут быть только г и в. Арифметические команды Операнды могут быть двоичные (8 или 16 бит, целые, со знаком или без знака), двоично-десятичные (от 1 до 255 байт, без знака, в упакованном или распакованном (АВСП-коды) форматах). Машина не обращает внимания на формат и обращается с ними формально, как с двоичными числами в дополнительном коде. Но дня десятичной арифметики после операции требуется коррекция (операции только над одним байтом). Команды сложения, вычитания и сравнения Команды сложения, вычитания и сравнения — двухадресные.

О АОО г(зт., Вгс — сложение двоичных чисел (аг(д — сложить). Прибавляет байт нлн слово из памяти, регистра непосредственно к содержимому регистра или прибавляет байт или слово из регистра непосредственно к памяти (содержимое згс прибавляет к содержимому 051). Операнды ((51 и Вгс должны иметь одинаковый формат (оба, пли байт, или слово) и могут иметь тип данных: згс — г, зх 1; бз( — г, е (невозможно гзедв, т и нельзя, чтобы оба типа были е или оба гбеде). Команда АОО формирует флаги АР, СР, ОР, РР, 55 и ЕР. С) 505 051, Вгс — вычитание двоичных чисел (зпЬВ(гас( — вычесть). Вычитает байт или слово, взятое из памяти, регистра или непосредственно из содержимого ' В команлак лля отображения операнлоп используется обычное обозначение орг и семантические обозначения згс (заогсе — источник) и бзе (безнпасгоп — приемник).

290 Глава 9. Г! аг аммное п веление — основа автоматизации регистра или вычитает байт или слово, взятое из регистра или непосредственно из памяти (содержимое згс вычитается из солержимого 0зг). Операнды 0з1 и згс должны иметь одинаковый формат (оба или байт или слово) и могут быть: з гс— г, е, 0 0зг — г, а (невозможно гзеде и нельзя, чтобы оба типа были е). Команда 50В формирует флаги ЯГ, СГ, ОГ, РЕ, 5Г и ?Е. С1 СМР 0з1, згс — сравнение (сошраге — сравнить). Сравнивает содержимое двух полей данных; фактически команда вычитает второй операнд (згс) из первого (0зс), но значение 0зг не изменяет, а лишь формирует флаги.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее