Файл: Методические указания для проведения практических работ по профессиональному модулю Проектирование цифровых устройств.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 28.03.2024
Просмотров: 142
Скачиваний: 0
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
-
Преобразование чисел из одной системы в другую
Перевод десятичных чисел в другие системы счисления
Перевод целых чисел
Алгоритм перевода (последовательность шагов):
-
Основание новой системы счисления выразить в десятичной с.с. и все последующие действия выполнять в десятичной с.с. -
Последовательно выполнять деление данного числа и получаемых промежуточных частных на основание новой с.с. до тех пор, пока не будет получено частное, меньшее делителя. -
Полученные остатки, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления. -
Составить число в новой системе счисления, записывая его, начиная с последнего частного.
Пример 1: Перевести число 37 из десятичной в двоичную систему счисления. (Ответ: 3710 = 1001012).
37 : 2 = 18 + 1, значит a0 = 1,
18 : 2 = 9 + 0, значит a1 = 0,
9 : 2 = 4 + 1, значит a2 = 1,
4 : 2 = 2 + 0, значит a3 = 0,
2 : 2 = 1 + 0, значит a4 = 0,
1 < 2, следовательно, деление следует прекратить, а полученная цифра – это a5 = 1.
Теперь составим число a5 a4 a3 a2 a1 a0 =1001012
Пример 2: Перевести число 315 из десятичной в восьмеричную систему счисления. (Ответ: 31510 = 4738).
315 : 8 = 39 + 3, значит a0 = 3,
39 : 8 = 4 + 7, значит a1 = 7,
4 < 7, следовательно, деление следует прекратить, а полученная цифра – это a2 = 4.
Теперь составим число a2a1a0 = 4738
Пример 3: Перевести число 315 из десятичной в шестнадцатеричную систему счисления. (Ответ: 31510 = 13B16).
315 : 16 = 19 + 11, значит a0 = 11,
19 : 16 = 1 + 3, значит a1 = 3,
1 < 16, следовательно, деление следует прекратить, а полученная цифра – это a2 = 1.
Теперь составим число a2a1a0 = 13B16
Перевод правильных дробей
Алгоритм перевода:
-
Основание новой системы счисления выразить в десятичной системе счисления и все последующие действия производить в десятичной с.с. -
Последовательно умножать данное число и получаемые дробные части произведений на основание новой системы счисления до тех пор, пока дробная часть произведения не станет равной нулю или не будет достигнута требуемая точность представления числа в новой системе счисления. -
Полученные целые части произведений, являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления. -
Составить дробную часть числа в новой системе счисления, записывая его, начиная с целой части первого произведения.
Пример 1: Перевести число 0,1875 из десятичной в двоичную систему счисления. (Ответ: 0,1875 10 = 0,00112).
0 | 1875 2 |
a-1 = 0 | 3750 2 |
a-2 = 0 | 7500 2 |
a-3 = 1 | 5000 2 |
a-4 = 1 | 0000 |
Теперь составим число 0,a-1a-2a-3 = 0, 00112
Пример 2: Перевести число 0,1875 из десятичной в восьмеричную систему счисления. (Ответ: 0,1875 10 = 0,148).
0 | 1875 8 |
a-1 = 1 | 5000 8 |
a-2 = 4 | 0000 |
Теперь составим число 0,a-1a-2= 0, 148
Пример 3: Перевести число 0,1875 из десятичной в шестнацатеричную систему счисления. (Ответ: 0,1875 10 = 0,316).
0 | 1875 16 |
+ 1 1 | 1250 8750 |
a-1 = 3 | 0000 |
Теперь составим число 0,a-1= 0, 316
Перевод смешанных чисел
Правило перевода: целая и дробная часть исходного числа переводятся отдельно по рассмотренным выше алгоритмам. В итоговой записи числа в новой системе счисления целая часть отделяется от дробной запятой (точкой).
Пример: 315,187510 = 473,148 = 13B,316
Перевод чисел из любой позиционной системы счисления в десятичную
Алгоритм перевода:
-
Расставить значения степеней основания системы счисления для каждой значащей цифры числа. -
Цифры числа в исходной системе счисления привести в соответствие с алфавитом десятичной системы счисления. -
Основание исходной системы счисления выразить в десятичной с.с. и все последующие действия выполнять в десятичной с.с. -
Записать число в развернутой форме и выполнить необходимые арифметические действия.
Пример 1: Перевести число 1001,011 из двоичной в десятичную систему счисления. (Ответ: 1001,011 2 = 9,37510).
3 2 1 0 -1-2 -3 |
1001, 01 1 = 123+120+12-2+12-3 = 8+ 1 + 0,25 + 0,125 = 9,37510 |
Пример 2: Перевести число 726,15 из восьмеричной в десятичную систему счисления. (Ответ: 726,15 2 = 470,20312510).
2 1 0 -1-2 |
726, 15 = 782+281+680+18-1+58-2 = 448+ 16 + 6 + 0,125 + 0,078125 = 470,20312510 |
Пример 3: Перевести число 10A,F из шестнадцатеричной в десятичную систему счисления. (Ответ: 10A,F 16 = 266,937510).
2 1 0 -1 |
10A, A = 1162+10160+1516-1 = 256 + 10 + 0,9375 = 266,937510 |
Перевод чисел из восьмеричной системы счисления в двоичную и обратно
Чтобы сформулировать правило перевода чисел из восьмеричной системы счисления в двоичную, вспомним рассмотренный ранее кибернетический подход к измерению информации. Уравнение Хартли позволяет определить информационный вес символа iалфавита мощностью N: 2i =N. Мощность алфавита восьмеричной с.с. равна 8, следовательно, информационный вес каждого символа этого алфавита равен трем битам, т.к. 23 =8. Известно, что каждый символ двоичного алфавита несет один бит информации, следовательно, для кодирования каждой цифры восьмеричной с.с. требуется 3 цифры двоичной с.с.
Правило перевода: для перевода числа из восьмеричной системы счисления в двоичную необходимо каждую цифру этого числа записать трехразрядным двоичным числом (триадой).
Пример. Записать число 325,278 в двоичной системе счисления.
325,278 = 011 010 101, 010 111 8-2 = 11010101,0101112
Для перехода от восьмерично-двоичной системы к двоичной отбрасываются незначащие нули слева для целых чисел и справа - для правильных дробей.
Для перевода числа из двоичной с.с. в восьмеричную необходимо разбить это число вправо и влево от запятой на группы по три разряда – триады и представить каждую группу цифрой в восьмеричной системе счисления. Крайние неполные триады дополняются нулями.
Пример. Записать число 10111011,011012 в восьмеричной системе счисления.
10111011,011012 = 010 111 011, 011 010 8-2 = 273,328
Перевод чисел из шестнадцатеричной системы счисления в двоичную и обратно
Правило перевода: Для перевода числа из шестнадцатеричной системы счисления в двоичную необходимо каждую цифру этого числа заменить тетрадой – четырехразрядным двоичным числом.
Пример. Записать число C876,F316 в двоичной системе счисления.
C876,F316 = 1100 1000 0111 0110, 1111 0011 16-2 = 1100100001110110,11110011 2
Правило перевода: Для перевода числа из двоичной системы счисления в шестнадцатеричную необходимо разбить это число вправо и влево от запятой на группы по четыре разряда – тетрады и представить каждую группу цифрой в шестнадцатеричной системе счисления.
Пример. Записать число 1011101101,1011011012 в восьмеричной системе счисления.
1011101101,1011011012 = 0010 1110 1101 , 1011 0110 1000 16-2 = 2ED,B688
-
Арифметические действия в различных системах счисления
Действия над числами с основаниями отличными от 10, несколько непривычны, и поэтому вызывают определенные затруднения. Однако правила сложения, вычитания, умножения «столбиком» и деления «уголком», которые используются в десятичной системе счисления, применимы в любой системе счисления. Как и в десятичной системе счисления, при сложении чисел единица переноса и старший разряд появляется, если сумма цифр равна или больше основания рсистемы счисления. При вычитании чисел, если цифра уменьшаемого меньше цифры вычитаемого, то из следующего старшего разряда «занимается» единица основания.
В арифметике все операции, в конечном счете, как будет показано позже, могут быть определены через операцию сложения. Рассмотрим ее выполнение в системе счисления с основанием р.
Пусть заданы два целых положительных числа в позиционной системе счисления с основанием р. Запишем эти числа в виде:
Сумма этих чисел равна числу, которое может быть представлено в аналогичной форме
Сумма этих чисел вычисляется по следующим правилам:
-
операция сложения выполняется поразрядно, начиная с младших разрядов в слагаемых; -
в каждом одноименном разряде слагаемых суммируются соответствующие цифры и перенос из предыдущего разряда суммы; -
если сумма цифр одноименных разрядов слагаемых и переноса меньше основания системы, то перенос в следующий разряд равен нулю, если сумма цифр равна или больше основания системы - перенос равен единице.
Если числа А и Б имеют разное количество разрядов, то для меньшего числа считается, что все цифры недостающих разрядов равны нулю. Количество разрядов суммы S - m может превосходить количество разрядов слагаемых n.
П
ak bk
равило сложения в одном разряде можно пояснить рис. 2.1.1, на котором показана схема работы сумматора в k-м разряде.
Пк-1
Пк
Sk
Здесь k означает перенос k -го разряда в (k +1) разряд, который определяется следующими неравенствами:
Пк =0, при
Пк =0, при
Для суммы, в разряде k, выполняется следующее правило
, где sk
Цифры суммы чисел могут быть определены только последовательно, начиная с младших разрядов. Поэтому в соответствующих суммирующих схемах ЭВМ (многоразрядных сумматорах) операция суммирования должны выполняться последовательно, что существенно увеличивает время вычисления.