Главная » Просмотр файлов » Бройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем (2006)

Бройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем (2006) (1186249), страница 81

Файл №1186249 Бройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем (2006) (Бройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем (2006)) 81 страницаБройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем (2006) (1186249) страница 812020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Операнды ба1 и вгс должны иметь одинаковый формат (оба или байт или слово) и тип данных: згс — г, гп, й с181— г, пт (невозможно гвецт,! и нельзя, чтобы оба типа были гп или оба гвецпт). Команда А00 формирует флаги АЕ, СЕ, ОЕ, РЕ, ЗЕ и 2Е. О 80В бз1, згс — вычитание двоичных чисел (зпЫгасс — вьгчесть). Вычитает байт или слово, взятое из памяти, регистра или непосредственно из содержимого регистра, или вычитает байт или слово, взятое из регистра или непосредственно из памяти (содержимое вгс вычитается из содержимого ба1). Операнды бз1 и вгс должны иметь одинаковый формат (оба или байт или слово) и могут быть: вгс — г, гп, й бе — г, гп (невозможно гвецгп и нельзя, чтобы оба типа были гп).

Команда 808 формирует флаги АЕ, СЕ, ОЕ, РЕ, ЗЕ и 2Е. О СМР бз1, згс — сравнение (сошраге — сравнить). Сравнивает содержимое двух полей данных; фактически, команда вычитает второй операнд (згс) из первого (бзс), но значение бв1 не изменяет, а лишь формирует флаги. Операнды бм и вгс должны иметь одинаковый формат (оба или байт или слово) и могут быть: згс — г, пт, й бв1 — г, гп (невозможно гаецв, 1 и нельзя, чтобы оба типа были гп или оба гзецгп). Команда СМР формирует флаги: СЕ, ЕЕ при сравнении чисел без знака; СЕ, ОЕ, ЗЕ, ЕЕ при сравнении чисел со знаком; флаги АЕ, РЕ не определены. Команды приращения Команды приращения — одноадресные.

О 1ьгс бз1: инкремент (1 псгетепс — нарастить, увеличить). прибавляет 1 к содержимому бз1. Операнд бвс может быть представлен оператором типа г или ш. Команда 1НС формирует флаги РЕ, АЕ, ЕЕ, ЗЕ, ОЕ. О ОЕС бз1: декремент (десгешепС вЂ” уменьшить). Вычитает 1 из содержимого бв1. Операнд бвс может быть представлен оператором типа г или ш. Команда 0ЕС формируе. флаги РЕ, АЕ, 2Е, ЗЕ, ОЕ.

Команды умножения Команды умножения — одноадресные. Указывается только ЗВС (множитель); ОЗТ (множимое) задается строго определенным образом. Основные команды ассемблера 369 О М0~ згс — умножение (вц1йр!у — умножить). Выполняет умножение беззнакового множимого (8 или 16 бит) на беззнаковый множитель (8 или 16 бит). Команда одноадресная — указывается только ЗВС (множитель); 08Т (множимое) берется строго определенным образом. ЗВС может быть представлен оператором типа г или в (1 — нельзя). Если формат ЗВС вЂ” байт, то множимое (байт) находится в А1., произведение (слово) будет в АХ; если формат ЗйС— слово, то множимое (слово) извлекается из АХ, произведение (двойное слово) помещается в ОХ:АХ (старшие два байта в ОХ, младшие — в АХ).

Команда М01. формирует флаги СЕ, ОЕ; воздействует на флаги АЕ, РЕ, ЗЕ, 2Е (флаги не определены). О 1М01. згс — целое умножение знаковых чисел (всейег вп!йр!у — умножение целых чисел со знаком). Выполняет умножение знакового множимого (8 или 16 бит) на знаковый множитель (8 или 16 бит). Команда одноадресная — указывается только ЗВС (множитель); ОЗТ (множимое) берется строго определенным образом. ЗйС может быть представлен оператором типа г или в (1 не допускается). Если формат ЯВС вЂ” байт, то множимое (байт) извлекается из А~ произведение (слово) будет в АХ; если формат ЗВС вЂ” слово, то множимое (слово) находится в АХ, произведение (двойное слово) заносится в ОХ:АХ (старшие два байта результата в ОХ, младшие — в АХ). Команда 1М01.

формирует флаги СЕ, ОЕ; воздействует на флаги АЕ, РЕ, ЯЕ, 2Е (флаги не определены). Команды деления Команды деленая — одноадресные, указывается только ЯВС (делитель); ОЗТ (делимое) задается строго определенным образом. [2 01Ч згс — деление (ЙчЫе — делить). Выполняет деление беззнакового делимого (16 или 32 бит) на беззнаковый делитель (8 или 16 бит). Команда одно- адресная — указывается только ЗВС (делнтель); ОЗТ (делимое) берется строго определенным образом. ЗйС может быть представлен оператором типа г или в (1 — нельзя).

Если формат ЯВС вЂ” байт, то делимое (слово) находится в АХ, частное от деления (байт) будет в А1., остаток от деления (байт) помещается в АН; если формат ЗВС вЂ” слово, то делимое (двойное слово) заносится в ОХ;АХ (старшие два байта в ОХ, младшие — в АХ), частное от деления (слово) в АХ, остаток от деления (байт) сохраняется в 01. Команда 01Ч формирует флаг 1Е (1Е - 1 при делении на О и при делении большого числа на очень малое, если частное вне диапазона); воздействует на флаги АЕ, СЕ, ОЕ, РЕ, ЗЕ, 2Е (флаги не определены). (з 601ч згс — деление целых чисел со знаком (1пгейег Йч(г)е — деление целых чисел со знаком).

Выполняет деление знакового делимого (16 или 32 бит) на знаковый делитель (8 или 16 бит). Команда одноадресная — указывается только ЗВС (делитель); ОЗТ (делимое) берется строго определенным образом. ЗйС может быть представлен оператором типа г или в (1 — нельзя). Если формат ЗйС вЂ” байт, то делимое (слово) — в АХ, частное от деления (байт) будет в А1., остаток от деления (байт) — в АН; если формат ЗВС вЂ” слово, то делимое (двойное слово) попадает в ОХ:АХ (старшие два байта в ОХ, младшие в АХ), частное от деления (слово) — в АХ, остаток от деления (байт) — в О1 Команда 101Ч формирует флаг 1Е (1Е - 1 при делении на О и при делении боль- 370 Глава 18. Элементы программирования на языке ассемолера шого числа на очень малое, если частное вне диапазона), воздействует на флаги АЕ, СЕ, ОЕ, РЕ, 8Е, ЕЕ (флаги не определены).

Логические команды Это двухадресные команды, они используются для сравнения, сброса и установки битов операнда в операциях преобразования кодов и при выполнении арифметических операции в кодах АЯСП. С3 Ой Пзй згс — логическое сложение (ог — или). Команда выполняет поразрядную дизъюнкцию (логическое сложение — операцию ИЛИ) битов двух операндов; устанавливает 1 в тех битах операнда Пзй в которых была 1 хотя бы у одного из исходных операндов. Операнды оз1 и згс должны иметь одинаковый формат (оба или байт, или слово) и могут быть: згс типа г, п1, 'к пи типа г, т (невозможно гзепт и нельзя, чтобы оба типа были Гп).

Команда Ой сбрасывает ОЕ - О и СЕ - О; формирует РЕ, 8Е, ЕЕ; значение АЕ не определено. й АИО пз1, згс — логическое умножение (апо — и). Команда выполняет поразрядную конъюнкцию (логическое умножение — операцию И) битов двух операндов; устанавливает 1 в тех битах операнда пзй в которых у обоих исходных операндов были 1. Операнды озг и згс должны иметь одинаковый формат (оба или байт или слово) и могут быть: згс типа г, в, д озг типа г, в (невозможно гзецт и нельзя, чтобы оба типа были Гл). Флаги: ОЕ - О и СЕ = О; команда формирует РЕ, 8Е, ЕЕ; значение АЕ не определено.

Команды безусловной передачи управления дМР орг — команда безусловной передачи управления бшпр ппсопйс[опаПу— перейти безусловно). Операнд орг может быть задан прямым или косвенным адресом. 0 По прямому адресу: дМР метка. 0 Если метка в том же сегменте, что и команда дМР, переход считается внутренним (пеаг), если не в том же сегменте — переход внешний (1аг). В написании самой команды дМР разницы нет; тип перехода определяется видом метки: после метки для внутреннего перехода ставится двоеточие «нп Транслятор по таблице меток и их адресов сам определяет атрибуты пеаг или [аг и соответственно транслирует команду передачи управления в более короткую или более длинную команду (более длинную, так как надо менять не только содержимое смешения [Р, но и регистра сегментов С8).

Несколько сократить длину команды может указание программиста «]МР зпогс метка» о том, что метка не далее +128 байтов от первого байта команды дМР (это указание не обязательно, но если оно есть и ошибочно, то транслятор выдаст ошибку). С] По косвенному адресу. Косвенный адрес может быть задан в регистре — ]МР в или в памяти — 1МР символьное имя. С) В памяти с косвенной адресацией: дМР пеаг р1г [8!];,3МР 1аг р1г [ВХ] и т. д. В последних двух командах пеаг р1г и 1аг р1г указывать обязательно, так как какое слово содержится в регистре 8[ — обычное или двойное, — ассемблер заранее не знает, и ему нужно помочь. Основные команды ассемблера эи Команды перехода к подпрограмме и выхода из подпрограммы Подпрограммы оформляются как процедуры.

Процедура начинается меткой— именем процедуры и заканчивается командой выхода ге1 (гегпгп). В программе процедура помещается в операторные скобки: ргос ... епбр Около оператора ргос могут быть указаны атрибуты дистанции: пеаг — близкая процедура (в том же сегменте) или гаг — дальний вызов (если этот атрибут опущен, то подразумевается пеаг). Пример: О!8Р ргос 1аг; в отличие от метки после имени процедуры двоеточие не ставится: ге1 015Р епбр Команда перехода к подпрограмме: СНЕ орг Вызов процедуры (са1! а ргоседпге — вызов процедуры), безусловная передача управления, выполняющая короткий или дальний вызов процедуры.

Флаги не меняются. В команде САЫ. атрибуты пеаг или 1аг указывать не надо, так как ассемблер нужную информацию получит сам из директивы определения процедуры. По команде САЕЕ должны быть выполнены: С! запоминание в стеке адреса возврата (содержимого !Р и С8 для следующей команды: 16 бит, если пваг, и 32 бит, если гаг); О переход к выполнению процедуры (инициируется записью в !Р и в С8 (если 1аг) нового адреса команды).

Операнд орг, определяющий адрес процедуры, бывает: З непосредственным: СА!.!. имя процедуры; 0 прямым — процедуру с атрибутом пеаг можно вызвать через регистр, в котором содержится смещение адреса процедуры: СА~~ г; О косвенным: О процедура с атрибутом пеаг вызывается, используя переменную размером в слово: САВЕ кгогб р1г символьное имя, О процедура с атрибутом 1аг вызывется, используя переменную размером в двойное слово: САВЕ Пкгогб р1г символьное имя.

Команда выхода из подпрограммы йЕТ вЂ” возврат из процедуры (гегпгп !гол ргоседпге). Команда извлекает из стека адрес возврата и возвращает управление из процедуры, вызванной ранее командой САВЕ Необязательный числовой параметр команды йЕТ указывает количество байтов, которые освобождаются в стеке после извлечения адреса возврата. Если процедура имеет атрибут пеаг, то команда йЕТ извлекает из стека одно слово и заносит его в регистр !Р; если процедура имеет атрибут 1аг, то команда йЕТ Зтг Глава 18. Элементы программирования иа языке ассемблера извлекает из стека два слова: сначала смещение адреса, а затем адрес сегмента— и заносит их, соответственно, в регистр !Р и в регистр СЗ.

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

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

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