Дипломированных специалистов «Информатика и вычислительная техника»


Умножение двоичных чисел без знака



Download 12,06 Mb.
Pdf ko'rish
bet101/357
Sana22.02.2022
Hajmi12,06 Mb.
#115195
TuriДиплом
1   ...   97   98   99   100   101   102   103   104   ...   357
Bog'liq
assembler uchebnik dlya vuzov 2-e izd YuRXUW1

Умножение двоичных чисел без знака
Для умножения чисел без знака предназначена команда
Как видите, в команде указан всего лишь один операнд-сомножитель. Второй
операнд-сомножитель задан неявно. Его местоположение фиксировано и зависит
от размера сомножителей. Так как в общем случае результат умножения больше,
чем любой из его сомножителей, то его размер и местоположение должны быть
тоже определены однозначно. Варианты размеров сомножителей и мест размеще-
ния второго операнда и результата приведены в табл. 8.2.
Таблица 8.2. Расположение операндов и результата при умножении
Первый
сомножитель
Байт
Слово
Двойное слово
Второй
сомножитель
AL
АХ
ЕАХ
Результат
битов в АХ: AL — младшая часть результата;
АН — старшая часть
32 бита в паре DX:AX: AX — младшая часть
результата; DX — старшая часть результата
64 бита в паре EDX:EAX: ЕАХ — младшая часть
результата; EDX — старшая часть результата
Все прилагаемые к книге файлы можно найти по адресу http://www.piter.com/download. —
Примеч. ред.


 Глава 8. Арифметические команды
Из таблицы видно, что произведение состоит из двух частей и в зависимости от
размера операндов размещается в двух местах — на месте второго сомножителя
(младшая часть) и в дополнительных регистрах АН, DX, EDX (старшая часть). Как же
динамически (то есть во время выполнения программы) узнать, что результат доста-
точно мал и уместился в одном регистре или что он превысил размерность регист-
ра и старшая часть оказалась в другом регистре? Для этого привлекаются уже из-
вестные нам флаги переноса CF и переполнения OF:
если старшая часть результата нулевая, то после завершения операции CF = О
= 0;
если же флаги CF и OF ненулевые, это означает, что результат вышел за пределы
младшей части произведения и состоит из двух частей, что и нужно учитывать
при дальнейшей работе.
Рассмотрим следующий пример программы (листинг 8.5).
Листинг
Умножение
<1>
<2> masm
<3> model small
<4> stack 256
<5>
данных
<6> rez label word
<7> rez_l db 45
<8> rez_h db 0
<9>
кода
<10>
;точка входа в программу
<12> хог
<13>
<14>
rez_l
<15> jnc ml
нет
то на
<16> mov
Download 12,06 Mb.

Do'stlaringiz bilan baham:
1   ...   97   98   99   100   101   102   103   104   ...   357




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish