Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

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

Читайте также:
  1. A. Определение
  2. B) распределение и производство
  3. I. ОПРЕДЕЛЕНИЕ ИНТУИЦИИ
  4. I. ОПРЕДЕЛЕНИЕ НАВИГАЦИОННЫХ ЭЛЕМЕНТОВ
  5. I.II. Приемное отделение. Прием пациента в стационар.
  6. II. Определение возможного способа разработки системы.
  7. II. РАСПРЕДЕЛЕНИЕ ЧАСОВ КУРСА ПО ТЕМАМ И ВИДАМ РАБОТ

Наиболее просто умножение целых чисел можно выполнить по алгоритму, изображенному на рис. 3.2. После загрузки множимого А и множителя В в регистры общего назначения и обнуления регистра произведения С проводится анализ содержимого регистра множителя. Если 5 О, то к сумме частичных произведений С прибавляется множимое А.

Затем содержимое регистра множителя уменьшается на 1 и цикл умножения повторяется до тех пор, пока содержимое регистра множителя не окажется равным 0. При умножении «-разрядных сомножителей 2«-разрядное произведение размещают в двух регистрах. Данный метод умножения находит ограниченное применение в тех приложениях, где время умножения некритично (при 8-разрядных сомножителях максимальная продолжительность операции умножения может составить 255 циклов сложения).

На практике больше распространены методы умножения путем сложения ряда частичных произведений С = где 6; – значение разряда множителя (; = О, 1,…, п-\). Один из алгоритмов умножения, начиная с младших разрядов множителя, со сдвигом вправо суммы частичных произведений приведен на рис. 3.3.

Этот алгоритм может быть использован для получения произведения двух двоичных чисел без знака. Количество итераций умножения п определяется числом разрядов множителя. Поскольку в процессе умножения на каждой итерации выполняется сдвиг множителя В на один разряд вправо, на место освобождаемого разряда можно записать выталкиваемый при сдвиге вправо разряд произведения С. Таким образом, 2«-разрядное произведение можно получить, объединив содержимое «-разрядного регистра, в котором формируется старшая часть произведения, и регистра В, в котором после выполнения умножения окажется младшая часть произведения.

при делении делимого величиной в учетверенное слово на делитель величиной в двойное слово, причем значение делимого в более чем 4 294 967 296 раз больше значения делителя.

К примеру, выполним деление значения в области del на значение в области delt (листинг 6).

Для деления чисел без знака предназначена команда

Div делитель

Делитель может находиться в памяти или в регистре и иметь размер 8, 16 или 32 бит. Местонахождение делимого фиксировано и так же, как в команде умножения, зависит от размера операндов. Результатом команды деления являются значения частного и остатка.

Варианты местоположения и размеров операндов операции деления показаны в табл. 3.

Таблица 3. Расположение операндов и результата при делении

Делимое Делитель Частное Остаток
16 бит в регистре ax Байт регистр или ячейка памяти Байт в регистре al Байт в регистре ah
32 бит dx — старшая часть ax — младшая часть Слово 16 бит регистр или ячейка памяти Слово 16 бит в регистре ax Слово 16 бит в регистре dx
64 бит edx — старшая часть eax — младшая часть Двойное слово 32 бит регистр или ячейка памяти Двойное слово 32 бит в регистре eax Двойное слово 32 бит в регистре edx

После выполнения команды деления содержимое флагов неопределенно, но возможно возникновение прерывания с номером 0, называемого “деление на ноль”. Этот вид прерывания относится к так называемым исключениям.

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


Дата добавления: 2015-11-26; просмотров: 91 | Нарушение авторских прав



mybiblioteka.su - 2015-2024 год. (0.005 сек.)