Перевод чисел из одной системы счисления в другую.
Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Перевод чисел из одной системы счисления в другую.





МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к практическим занятиям по курсу "Информатика"

по теме:

"Арифметические основы ЭВМ "

Ростов-на-Дону


Составитель: Красников В.В.

 

Методические указания к практическим занятиям по курсу "Информатика" по теме "Арифметические основы ЭВМ". Ростов н/Д: ДГТУ, 2004 – 22 с.

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

 

 

Печатается по решению методической комиссии факультета "Автоматизация и информатика"

 

Рецензент: к.ф.-м.н. Бычков А.А.

 

© ДГТУ
1. Системы счисления.

Основные понятия и определения.

 

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

Все системы счисления делятся на позиционные и непозиционные.

Непозиционными системамиявляются такие системы счисления, в которых каждый символ сохраняет свое значение независимо от места его положения в числе.

Примером непозиционной системы счисления является римская система. К недостаткам таких систем относятся наличие большого количества знаков и сложность выполнения арифметических операций.

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



Примером позиционной системы счисления является десятичная система, используемая в повседневной жизни.

Количество различных цифр, употребляемых в позиционной системе определяет название системы счисления и называется основаниемсистемы счисления - “ ”.

В десятичной системе используются десять цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; эта система имеет основанием число десять.

Любое число N в позиционной системе счисления с основанием может быть представлено в виде полинома от основания :

 

(1.1)

 

здесь - число, - коэффициенты (цифры числа), - основание системы счисления ( >1).

Принято представлять числа в виде последовательности цифр:

 

.

 

В этой последовательности точка отделяет целую часть числа от дробной (коэффициенты при положительных степенях, включая нуль, от коэффициентов при отрицательных степенях). Точка опускается, если нет отрицательных степеней (число целое).

В ЭВМ применяют позиционные системы счисления с недесятичным основанием: двоичную, восьмеричную, шестнадцатеричную.

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

Двоичная система счисления. Используется две цифры: 0 и 1. В двоичной системе любое число может быть представлено в виде:

. ,

где либо 0, либо 1.

Эта запись соответствует сумме степеней числа 2, взятых с указанными коэффициентами:

Восьмеричная система счисления.Используется восемь цифр: 0, 1, 2, 3, 4, 5, 6, 7. Употребляется в ЭВМ как вспомогательная для записи информации в сокращенном виде. Для представления одной цифры восьмеричной системы используется три двоичных разряда (триада) (Таб. 1).

Таб. 1. Наиболее важные системы счисления.
Двоичная (Основание 2) Восьмеричная (Основание 8) Десятичная (Основание 10) Шестнадцатеричная (Основание 16)
    Триады     Тетрады
A B C D E F

Шестнадцатеричная система счисления. Для изображения чисел употребляются 16 цифр. Первые десять цифр этой системы обозначаются цифрами от 0 до 9, а старшие шесть цифр – латинскими буквами: 10–A, 11–B, 12–C, 13–D, 14–E, 15–F. Шестнадцатеричная система используется для записи информации в сокращенном виде. Для представления одной цифры шестнадцатеричной системы счисления используется четыре двоичных разряда (тетрада) (Таб. 1).

Пример.

а) Перевести с.с. *

 

б) Перевести с.с.

в) Перевести с.с.

.

Перевод целых десятичных чисел в восьмеричную, шестнадцатеричную и двоичную системыосуществляется последовательным делением десятичного числа на основание той системы, в которую оно переводится, до тех пор, пока не получится частное меньшее этого основания. Число в новой системе записывается в виде остатков деления, начиная с последнего.

Пример.

а) Перевести с.с.

 

 
176
16
6  

 

Результат .

б) Перевести с.с.

 

 
48
32
128 6  
14    

 

 

Результат .

Пример.

Перевести с.с.

3125 ´ 8
5000 ´ 8

Результат .

Замечание. Конечной десятичной дроби в другой системе счисления может соответствовать бесконечная (иногда периодическая) дробь. В этом случае количество знаков в представлении дроби в новой системе берется в зависимости от требуемой точности.

Пример.

Перевести с.с. Точность 6 знаков.

65´ 2  
3 ´ 2
6 ´ 2
2 ´ 2
4 ´ 2
8 ´ 2
6 ´ 2
  . . .

 

 

Результат .

 

 

Для перевода неправильной десятичной дроби в систему счисления с недесятичным основанием необходимо отдельно перевести целую часть и отдельно дробную.

Пример. Перевести с.с.

1) Переведем целую часть: 2) Переведем дробную часть:

     
   
 
   
     
125 2
25 2
5 2

 

Таким образом ; . Результат: .

Необходимо отметить, что целые числа остаются целыми, а правильные дроби – дробями в любой системе счисления.

 

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

Пример. а) = ;

б) = .

 

Для перехода от двоичной к восьмеричной (шестнадцатеричной) системепоступают следующим образом: двигаясь от точки влево и вправо, разбивают двоичное число на группы по три (четыре) разряда, дополняя при необходимости нулями крайние левую и правую группы. Затем триаду (тетраду) заменяют соответствующей восьмеричной (шестнадцатеричной) цифрой.

 

Пример.

а) Перевести с.с.

б) Перевести с.с.

Перевод из восьмеричной в шестнадцатеричную систему и обратноосуществляется через двоичную систему с помощью триад и тетрад.

Пример. Перевести с.с.

 

Результат: .

Двоичная арифметика.

 

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

Таблица двоичного сложения Таблица двоичного вычитания Таблица двоичного умножения
0+0=0 0+1=1 1+0=1 1+1=10 0–0=0 1–0=1 1–1=0 10–1=1 0 0=0 0 1=0 1 0=0 1 1=1

 

 

Пример.Выполнить сложение двоичных чисел: а) X=1101, Y=101;  
    единицы переноса
  1 1  

X= 1101

Y=+ 101

X+Y= 10010

 

Результат 1101+101=10010.

 

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

 

 

б) X=1101, Y=101, Z=111;  
  единицы переноса
  1 1 1  

X= 1101

Y= + 101

Z= + 111

X+Y+Z=11001

Результат 1101+101+111=11001.

 

 

При вычитаниидвоичных чисел в данном разряде при необходимости занимается 1 из старшего разряда. Эта занимаемая 1 равна двум 1 данного разряда.

Пример. Заданы двоичные числа X=10010 и Y=101. Вычислить X–Y.

Результат 10010 – 101=1101.

 

Умножениедвоичных чисел производится по тем же правилам, что и для десятичных с помощью таблиц двоичного умножения и сложения.

Пример. 1001 101=?

101 1001

Результат 1001 101=101101.

Делениедвоичных чисел производится по тем же правилам, что и для десятичных. При этом используются таблицы двоичного умножения и вычитания.

Пример.

1100.011: 10.01=?

 

110001.1
1001 101.1
 
­– 1001  
1001  
 

 

 

Результат 1100.011:10.01=101.1.

Упражнения 1.

1. Перевести следующие числа в десятичную систему счисления:

а) ; б) ; в) ; г) ; д) ; е) .

2. Перевести следующие числа из с.с в с.с.:

а) ; б) ; в) ; г) ; д) .

3. Перевести следующие числа из с.с в с.с. (точность 5 знаков после точки):

а) ; б) ; в) ; г) ;

д) ; е) ; ж) ; з) .

4. Перевести следующие числа в двоичную систему счисления:

а) ; б) ; в) ; г) .

5. Перевести следующие числа из одной системы счисления в другую:

а) с.с.;

б) с.с.;

в) с.с.; г) с.с..

6. Перевести следующие числа из одной системы счисления в другую:

а) с.с.; б) с.с.;

в) с.с.; г) с.с..

7. Заданы двоичные числа X и Y. Вычислить X+Y и X–Y , если:

а) X= , Y= ;

б) X= , Y= ;

в) X= , Y= .

8. Заданы двоичные числа X и Y. Вычислить X*Y и X/Y , если:

а) X= , Y= ;

б) X= , Y= ;

в) X= , Y= ;

г) X= , Y= .

 

Коды чисел.

 

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

1) Разряды числа в коде жестко связаны с определенной разрядной сеткой.

2) Для записи кода знака в разрядной сетке отводится фиксированный, строго определенный разряд. Например, если за основу представления кода взят один байт, то для представления числа будет отведено 7 разрядов, а для записи кода знака один разряд.

Прямой код. Прямой код двоичного числа совпадает по изображению с записью самого числа. Значение знакового разряда для положительных чисел равно 0, а для отрицательных чисел 1.*

Пример. В случае, когда для записи кода выделен один байт, для числа +1101 прямой код 0,0001101, для числа –1101 прямой код 1,0001101.

Обратный код.Обратный код для положительного числа совпадает с прямым кодом. Для отрицательного числа все цифры числа заменяются на противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица.

Пример.

Для числа +1101 прямой код 0 , 0001101; обратный код 0,0001101.

Для числа –1101 прямой код 1 , 0001101; обратный код 1,1110010.

Дополнительный код.Дополнительный код положительного числа совпадает с прямым кодом. Для отрицательного числа дополнительный код образуется путем получения обратного кода и добавлением к младшему разряду единицы.

Пример.

Для числа +1101:

прямой код обратный код дополнительный код

0,0001101 0,0001101 0,0001101

 

Для числа –1101:

прямой код обратный код дополнительный код

1,0001101 1,1110010 1,1110011

 

Пример.

Сложить X и Y в обратном и дополнительном кодах.

а) X= 111, Y= –11;

1) Сложим числа, пользуясь правилами двоичной арифметики:

 

X= 111 Y= – 11 X+Y= 100

 

2) Сложим числа, используя коды:

Прямой код Сложение в обратном коде Сложение в дополни-тельном коде
Xпр=0,0000111 Yпр=1,0000011   Xобр= 0,0000111 Yобр= 1,1111100 1 0,0000011 +1 (X+Y)обр= 0,0000100 Xдоп= 0,0000111 Yдоп= 1,1111101 1)0,0000100 отбрасывается (X+Y)доп= 0,0000100

 

Так как результат сложения является кодом положительного числа (знак 0), то (X+Y)обр=(X+Y)доп=(X+Y)пр .

 

б) X= –101,Y= –11;

1) Сложим числа, пользуясь правилами двоичной арифметики:

X= – 101 Y= – 110 X+Y= –1011

 

2) Сложим числа, используя коды:

Прямой код Сложение в обратном коде Сложение в дополни-тельном коде
Xпр=1,0000101 Yпр=1,0000110   Xобр= 1,1111010 Yобр= 1,1111001 1 1,1110011 +1 (X+Y)обр= 1,1110100 Xдоп= 1,1111011 Yдоп= 1,1111010 1)1,1110101 отбрасывается (X+Y)доп= 1,1110101

 

 

Так как сумма является кодом отрицательного числа (знак 1), то необходимо перевести результаты в прямой код:

 

а) из обратного кода

(X+Y)обр=1,1110100 (X+Y)пр=1,0001011;

б) из дополнительного кода

(X+Y)доп=1,1110101 (X+Y)пр=1,0001010+0,0000001=1,0001011.

Таким образом, X+Y= –1011 и полученный результат совпадает с обычной записью

 

Упражнения 2.

 

1) Записать число в прямом, обратном и дополнительном кодах:

а) 11010; б) –11101; в) –101001; г) –1001110.

2) Перевести X и Y в прямой, обратный и дополнительный коды. Сложить их в обратном и дополнительном кодах. Результат перевести в прямой код. Проверить полученный результат, пользуясь правилами двоичной арифметики.

 

а) X= –11010; Y= 1001111; б) X= –11101; Y= –100110; в) X= 1110100; Y= –101101;  
г) X= –10110; Y= –111011; д) X= 1111011; Y= –1001010; е) X= –11011; Y= –10101.

 

 

3)

 

Сложить X и Y в модифицированном обратном и модифицированном дополнительном восьмиразрядных кодах. В случае появления признака переполнения увеличить число разрядов в кодах и повторить суммирование. Результат перевести в прямой код и проверить, пользуясь правилами двоичной арифметики.

 

а) X= 10110; Y= 110101; б) X= 11110; Y= –111001; в) X= –11010; Y= –100111;  
г) X= –11001; Y= –100011; д) X= –10101; Y= 111010; е) X= –1101; Y= –111011 .

 

 

Числа с плавающей точкой.

Для представления чисел с плавающей точкой (ЧПТ) используется полулогарифмическая форма записи числа:

где – основание системы счисления, – порядок числа, – мантисса числа .

Положение точки определяется значением порядка . С изменением порядка точка перемещается (плавает) влево или вправо.

 

Пример.

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

 

Пример.

ненормализованное нормализованное

число число

 

Для представления чисел в машинном слове выделяют группы разрядов для изображения мантиссы, порядка, знака числа и знака порядка:

а) представление чисел в формате полуслова

 

                             

Знак Знак Порядок p Мантисса m

(4 разряда) (10 разрядов)

б) представление чисел в формате слова  
         
                    . . .  

Знак Знак Порядок p Мантисса m

(7 разрядов) (23 разряда)

Наиболее типично представление ЧПТ в формате слова (32 разряда).

Пример.

а) Число А записывается в ячейку следующим образом:

 

     
. . .  
                                   
Знак Знак Порядок p Мантисса m (7 разрядов) (23 разряда)

 

б)Число А

 

 
. . .  
                                 
Знак Знак Порядок p Мантисса m (7 разрядов) (23 разряда)

 

 

Максимальным числом представимым в формате слова будет

А

.

 
. . .  
                                 
Зн Зн Порядок p Мантисса m

 

 
. . .  
                                 
Зн Зн Порядок p Мантисса m

Минимальным числом из возможно представимых в формате слова будет А

 

 

Минимальным по модулю, отличным от нуля и нормализованным будет А .

 
. . .  
                                 
Зн Зн p Порядок p Мантисса m

 

         
      . . .       . . .         . . .  
Знак Знак Порядок p Мантисса m (10 разрядов) (52 разряда)

Таким образом, числа с плавающей точкой позволяют увеличить диапазон обрабатываемых чисел, но при этом точность изображения чисел определяется только разрядами мантиссы и уменьшается по сравнению с числами с фиксированной точкой. При записи числа в формате слова диапазон представимых чисел будет от до , а точность определяться мантиссой, состоящей из 23 разрядов. Точность может быть повышена путем увеличения количества разрядов мантиссы. Это реализуется путем представления чисел с так называемой двойной точностью (используется формат двойного слова):

Литература.

1. Пономарев В.С., Красников В.В. Методические указания по курсу "Организация и функционирование ЭВМ и систем". Ч. 1. Арифметические основы ЭВМ. ДГТУ, 1996.

2. Каган Б.М. Электронные вычислительные машины и системы. М.: Энергоатомиздат, 1991.

3. Савельев А.Я. Прикладная теория цифровых автоматов. М.: Высшая школа, 1983.

4. Лю Ю-Чжен, Гибсон Г. Микропроцессоры семейства 8086/8088. М.: Радио и связь

 

 


* Здесь и в дальнейшем при одновременном использовании нескольких различных систем счисления основание системы к которой относится число будем указывать в виде нижнего индекса.

* Знаковым разрядом обычно является крайний разряд в разрядной сетке. В дальнейшем при записи кода знаковый разряд от цифровых условимся отделять запятой. Если количество разрядов кода не указано будем предполагать, что под запись кода выделен один байт.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к практическим занятиям по курсу "Информатика"

по теме:

"Арифметические основы ЭВМ "

Ростов-на-Дону


Составитель: Красников В.В.

 

Методические указания к практическим занятиям по курсу "Информатика" по теме "Арифметические основы ЭВМ". Ростов н/Д: ДГТУ, 2004 – 22 с.

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

 

 

Печатается по решению методической комиссии факультета "Автоматизация и информатика"

 

Рецензент: к.ф.-м.н. Бычков А.А.

 

© ДГТУ
1. Системы счисления.

Основные понятия и определения.

 

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

Все системы счисления делятся на позиционные и непозиционные.

Непозиционными системамиявляются такие системы счисления, в которых каждый символ сохраняет свое значение независимо от места его положения в числе.

Примером непозиционной системы счисления является римская система. К недостаткам таких систем относятся наличие большого количества знаков и сложность выполнения арифметических операций.

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

Примером позиционной системы счисления является десятичная система, используемая в повседневной жизни.

Количество различных цифр, употребляемых в позиционной системе определяет название системы счисления и называется основаниемсистемы счисления - “ ”.

В десятичной системе используются десять цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; эта система имеет основанием число десять.

Любое число N в позиционной системе счисления с основанием может быть представлено в виде полинома от основания :

 

(1.1)

 

здесь - число, - коэффициенты (цифры числа), - основание системы счисления ( >1).

Принято представлять числа в виде последовательности цифр:

 

.

 

В этой последовательности точка отделяет целую часть числа от дробной (коэффициенты при положительных степенях, включая нуль, от коэффициентов при отрицательных степенях). Точка опускается, если нет отрицательных степеней (число целое).

В ЭВМ применяют позиционные системы счисления с недесятичным основанием: двоичную, восьмеричную, шестнадцатеричную.

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

Двоичная система счисления. Используется две цифры: 0 и 1. В двоичной системе любое число может быть представлено в виде:







Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2018 zdamsam.ru Размещенные материалы защищены законодательством РФ.