рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Умножение двоичных чисел

Умножение двоичных чисел - раздел Компьютеры, Практическая работа №1 Архитектура ЭВМ и вычислительных систем Применительно К Двоичной Псс Наиболее Известны Следующие Основные Способы Вып...

Применительно к двоичной ПСС наиболее известны следующие основные способы выполнения операций умножения:

умножение начиная с младших разрядов множителя:

умножение начиная со старших разрядов множителя:

При «ручном» методе в обоих случаях умножение сводится к последовательному поразрядному умножению множимого на цифры множителя и накоплению (суммированию) получаемых частичных произведений. При этом операциями сложения могут управлять разряды множителя: если в i-м разряде множителя находится единица, то к сумме частичных произведений добавляется множимое с соответствующим сдвигом на i — 1 разряд (вправо или влево в зависимости от принятого способа выполнения операции умножения); если в i-м разряде множителя нуль, то множимое не прибавляется.

При «машинном» методе произведение формируется в виде возрастающего (по модулю) значения частичной суммы, равной после умножения на i-й разряд множителя сумме первых i частичных произведений.

Рассмотренные примеры показывают, что для получения произведения, помимо сложения, необходимо выполнять операции сдвига чисел (множимого либо частичной суммы). Очевидно, что произведение двух n - разрядных чисел есть число 2n - разрядное. Поэтому в случае ограничения поля цифр произведения n разрядами при умножении целых чисел в качестве результата берутся младшие n разрядов (и старших n разрядах должны быть нули, так как в противном случае вырабатывается признак переполнения), а мри умножении правильных дробей в качестве результата берутся старшие n разрядов (младшие n разрядов отбрасываются — происходит усечение числа — либо используются для округления кода старших n разрядов).

Знак произведения формируется по известному правилу: (+)•(+) = (+); (+)•(-) = (-); (-)•(+) = (-);( — )•( — ) = (+). В ЭВМ, как было указано в § 2.3, знак « —» числа кодируется единицей, а «+» — нулем, но правило формирования знака сохраняется. Операция, которую реализует ЭВМ для определения знака произведения, называется суммой по модулю два и обозначается : ;; ;.

 

Существует четыре метода умножения. Рассмотрим наиболее распространенный метод умножения целых чи­сел, начиная с младшего разряда со сдвигом суммы частичных про­изведений вправо при неподвижном множимом (рис. 7.4).

Операция умножения состоит из п или п—1 циклов (п—1 —чис­ло цифровых разрядов множителя). В каждом цикле анализиру­ется очередная цифра множителя, и если это 1, то к сумме частич­ных произведений прибавляется множимое; если 0 — прибавления множимого не происходит. Цикл завершается сдвигом суммы час­тичных произведений относитель­но неподвижного множителя (если не выполняется умножение на знаковый разряд).

Регистр множителя и сумма­тор частичных произведений при этом должны иметь цепи сдвига вправо. Регистр множимого мо­жет не иметь цепей сдвига. По­следовательность действий в каждом цикле выполнения опера­ции умножения определяется младшим разрядом регистра мно­жителя, куда последовательно одна за другой поступают цифры множителя. Так как по мере сдви­га множителя вправо старшие разряды регистра множителя освобождаются, он может быть использован для хранения младших разрядов произведения, поступающих из младшего разряда сумма­тора частичных произведений. Для этого младший разряд регист­ра сумматора соединяется со старшим разрядом регистра множи­теля. После выполнения операции умножения старшие разряды произведения будут находиться в регистре сумматора, младшие — в регистре множителя. Здесь все три регистра имеют одинаковую длину, равную количеству разрядов сомножителей.

Схема АЛУ для умножения n-разрядных положительных двоич­ных чисел приведена на рис. 7.5. В состав АЛУ входят входной ре­гистр множимого Рг1, регистры множителя Рг2 и Рг2’ на которых с помощью специально организованной передачи цепи сдвига впра­во Рг2/ = П(1)Рг2 и передачи Рг2=Рг2' выполняется сдвиг мно­жителя вправо, сумматор СМ для образования суммы частичных произведений, входной РгВ и выходной РгСМ регистры сумматора, на которых соответственно хранится текущее значение и образует­ся новое значение суммы частичных произведений и окончательное произведение.

Первоначаль­но в Pг1 поступает множимое. Регистр РгВ, хранящий сумму час­тичных произведений, устанавливается в нулевое состояние, а в счетчик циклов СчЦ за­носится число обрабаты­ваемых цифровых разря­дов. Затем в Рг2 поступает множитель. На этом завершается процедура началь­ных установок и начина­ется процесс вычисления сумм частичных произве­дений.

В зависимости от зна­чений (0 или 1) младшего разряда множителя к час­тичному произведению прибавляется либо 0, либо х, для чего регистру РгА сумматора присваивается соответствующее значе­ние. Полученная сумма умножается на 2-1 путем передачи кода с выхода сумматора на РгСМ со сдвигом на один разряд вправо. Одновременно множитель подготавлива­ется к перемещению в Рг2 так, чтобы на месте анализируемого младше­го разряда в Рг2 оказался следующий разряд множителя. Для этого содержимое регистра Рг2 передается в регистр Рг2' со сдвигом вправо на один раз­ряд.

Разряд 0 регистра Рг2’ при этом остается свободным и в него заносится младший разряд суммы, выходящий при сдвиге за пре­делы регистра РгСМ (Рг2'[0]: = СМ[п—1]. В следующем такте завершается сдвиг множителя путем занесения содержи­мого регистра Рг2' в регистр Рг2 и в регистре РгВ образуется сдвинутая сумма частичных произведений.

Кроме того, в этом такте уменьшается на 1 содержимое счет­чика циклов. Когда счетчик циклов достигает нуля, в регистрах РгСМ и Рг2 будут храниться соответственно старшие и младшие разряды произведения, требующие сдвига на один разряд вправо для правильного расположения в формате двойного слова. После выполнения этих сдвигов результат операции из РгСМ и Рг2 поступает на ШИВых.

Задание:

Составить алгоритм выполнения операции умножения целых положительных чисел.

Порядок выполнения работы:

  1. Зарисовать схему АЛУ.
  2. Разработать алгоритм, опираясь на схему и описание работы.
  3. Внести изменения в алгоритм умножения для одной из трех схем умножения:

Схема 1

Схема 2

Схема 3

Контрольные вопросы:

  1. Какие виды АЛУ вы знаете?
  2. Перечислите основные методы ускорения умножения
  3. Как реализуется операция умножения в АЛУ?

 

Практическая работа №4

Архитектура ЭВМ и вычислительных систем

Тема: CMOS - память компьютера

Цель работы: Познакомится с основными принципами работы с CMOS

Средства: Турбо Си+

Литература:Айден К., Колесниченко О.Аппаратные средства PC. 2-е издание. – СПб.: BHV-Санкт-Петербург, 1998

Краткие теоретические сведения:

CMOS – память представляет собой энергонезависимую память, содержимое которой сохраняется после выключения компьютера. В CMOS - памяти хранится текущее время и дата, сведения о конфигурации системы, результат тестирования при включении питания и другая информация, приведенная в следующей таблице:

Адрес ячейки Содержимое

00h - 0Dh +

Используются часами реального времени

0Eh Байт состояния диагностики при включении питания

0Fh Байт состояния отключения

10h Тип используемого НГМД

11h Зарезервировано

12h Тип НМД (если тип меньше 15)

13h Зарезервировано

14h Конфигурация оборудования

15h - 16h Объем основной памяти

17h - 18h Объем расширенной (extended) памяти

19h Тип первого НМД (если тип > 15)

1Ah Тип второго НМД (если тип > 15)

1Bh - 20h Зарезервировано

21h - 2Dh Зарезервировано

2Eh - 2Fh Контрольная сумма ячеек 10h - 20h

30h - 31h Объем расширенной (extended) памяти

32h Текущее столетие в двоично-десятичном

коде (19h для 19-го столетия)

33h Различная информация

34h - 3Fh Зарезервировано

Программа для чтения содержимого CMOS-памяти:

#include <stdio.h>

#include <stdlib.h>

main()

{

unsigned char cmos[164];

int i;

printf("n*Чтение из CMOS* ©Фролов A. 1991nn");

for(i=0; i < 64; i++)

{

outp(0x70,i);

cmos[i]=inp(0x71);

}

printf("nЯчейки часов реального времени: ");

for(i=0; i < 0xd; i++)

{

printf("%02.2x ",(unsigned)cmos[i]);

}

printf("nБайт диагностики: %02.2x",cmos[0xe]);

printf("nБайт отключения: %02.2xn",cmos[0xf]);

printf("nPassword : ");

for(i=0x34; i < 0x40; i++)

{

printf("%02.2x ",(unsigned)cmos[i]);

}

cmos[0x40]=0;

printf(">%s<n",&cmos[0x34]);

return 0;

}

 

Задание: Написать программу чтения содержимого CMOS-памяти.

Порядок выполнения работы:

1. Ввести и откомпилировать приведенную выше программу.

2. Прокомментировать каждое предложение программы

Контрольные вопросы:

1. Назначение CMOS-памяти

2. Как осуществляется питание CMOS-памяти в современных ПК?

3. По какому адресу находится текущее столетие в двоично-десятичном коде?

 

Практическая работа №5

Архитектура ЭВМ и вычислительных систем

Тема: Базовая система ввода/вывода BIOS

Цель работы: Познакомится с основными принципами работы с BIOS

Средства: Турбо Си+

Литература: Айден К., Колесниченко О.Аппаратные средства PC. 2-е издание. – СПб.: BHV-Санкт-Петербург, 1998

Краткие теоретические сведения:

– Конец работы –

Эта тема принадлежит разделу:

Практическая работа №1 Архитектура ЭВМ и вычислительных систем

Архитектура ЭВМ и вычислительных систем... Тема Выполнение операций сложения и вычитания в обратном и дополнительном... Цель работы Научиться производить операции сложения и вычитания в дополнительных и обратных кодах...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Умножение двоичных чисел

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Особенности сложения чисел в обратном и дополнительном кодах.
При сложении чисел в дополнительном коде возникающая единица переноса в знаковом разряде отбрасывается. При сложении чисел в обратном коде возникающая единица переноса в знаковом разряде п

Числа с фиксированной точкой.
Запись числа с фиксированной точкой обычно имеет знаковый и цифровой разряды. Фиксированная точка означает, что на этапе конструирования ЭВМ было определено, сколько и какие разряды машинного слова

Числа с плавающей точкой.
Для представления чисел с плавающей точкой (ЧПТ) используется полулогарифмическая форма записи числа: N = ± mq ± p где q- основание системы счисления,

Проверка состава оборудования
В программе, предназначенной для тиражирования, очень важной характеристикой является переносимость. Поскольку ПЭВМ разных пользователей могут иметь существенные отличия в конфигурации оборудования

Тип ПЭВМ
В конце ПЗУ BIOS по адресу FF00:0FFE записан байт типа ПЭВМ. Специфицированы следующие 4 значения этого байта для машин фирмы IBM: 0xFF - IBM PC; 0xFE - XT; 0xFD - PCjr; 0xFC - AT. Для ПЭВМ других

Состав оборудования
Опеределять состав оборудования следует только после того, как мы определили тип ПЭВМ. Это обусловлено тем, что способы получения информации о составе оборудования различны для XT и для AT. Рассмот

Определение объема оперативной памяти
Методика определения объема памяти - такая же, как и определения списка оборудования. Объем ОЗУ (в Кбайтах) находится в области памяти BIOS по адресу 0040:0013 (2-байтное слово) и может быть получе

Команды сложения и вычитания
В ПК имеется несколько команд сложения и вычитания. Основными из них являются следующие: Сложение: ADD op1, op2Вычитание (subtract): SUB op1, op2 В этих к

Команды умножения
Если сложение и вычитание беззнаковых и знаковых чисел производятся по одним и тем же алгоритмам, то умножение чисел этих двух классов выполняется по разным алгоритмам, в связи с чем в ПК имеются д

Команды деления
Как и умножение, деление чисел без знака и со знаком также реализуется двумя командами: Деление целых без знака (divide): DIV ор Деление целых со знаком (integer

Изменение размера числа
Рассмотрим такую задачу. Пусть к числу из регистра ВХ надо прибавить число из регистра AL: BX:=BX+AL. Здесь требуется сложить слово с байтом, но в ПК нет команды сложения слова с байтом. Поэтому, п

Расширение байта до слова(convert byte to word): CBW
У этой команды местонахождение операнда и результата фиксировано: операнд всегда берется из AL, а результат всегда записывается в АХ. Команда записывает в регистр АН число 00h или 0FFh в зависимост

Логические команды
Логическим командам, которые, как следует из их названия, выполняют логические операции - отрицание, конъюнкцию и дизъюнкцию, присущ ряд общих черт. Во-первых, все они реализуют, как говор

Ор1 ор2
r8 i8, r8, m8 m8 i8,r8 r16 il6, rl6, ml6 m16 il6, rl6 Команда производит поразрядное логическое умножение операндов и записы-вает результат на место первого опер

Проверка: TEST opl,op2
Это аналог команды AND, но результат логического умножения никуда не записывается. Главное в команде TEST - установка флагов. Как уже было сказано, в логических командах интерес представляет только

Исключающее ИЛИ (exclusive OR): XOR opl,op2
Допустимые типы операндов - как в команде AND. И здесь результат записывается на место первого операнда, причем i-й бит результата равен 0, если i-e биты операндов совпадают, и равен 1, ес

Прямой переход
В данном случае в качестве ор указывается метка той команды, на которую надо передать управление: JMP <метка> Пример: JMP L ;следующей будет выполняться команда с м

Косвенный переход
Теперь рассмотрим другую разновидность безусловного перехода - косвенный переход. В этом случае в команде перехода указывается не сам адрес перехода, а то место, где находится этот адрес. Таким мес

Команды сравнения и условного перехода
Если переход осуществляется только при выполнении некоторого условия и не осуществляется в противном случае, то такой переход называется условным. Условный переход обычно реализуется в два шага: сн

Команды управления циклом
С помощью команд перехода можно реачизовать любые разветвления и циклы. Например, следующие операторы языка Паскаль а) if X>0 then S1 else S2 б) while X>0 do S в) r

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги