12800

ПРЕДСТАВЛЕНИЕ И ЗАПИСЬ ДВОИЧНЫХ ЧИСЕЛ

Лабораторная работа

Информатика, кибернетика и программирование

Лабораторная работа № 1 ПРЕДСТАВЛЕНИЕ И ЗАПИСЬ ДВОИЧНЫХ ЧИСЕЛ Цель работы: Изучить правила перевода чисел из одной системы исчисления в другую. Изучить способы кодирования двоичных чисел. Изучить формы представления двоичных чисел а также способы перевода одно

Русский

2013-05-03

687 KB

37 чел.

Лабораторная работа № 1

«ПРЕДСТАВЛЕНИЕ И ЗАПИСЬ ДВОИЧНЫХ ЧИСЕЛ»

Цель работы: Изучить правила перевода чисел из одной системы исчисления в другую. Изучить способы кодирования двоичных чисел. Изучить формы представления двоичных чисел, а также  способы перевода одной формы записи в другую.

Время выполнения работы – 4 часа.

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

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

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

,    (1)

где  – число в позиционной системе исчисления с основой ;

       – коэффициент;

       – степень и индекс.

Вес каждого символа определяется его позицией в записи числа.

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

  (2)

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

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

  1.  Преобразование десятичных чисел в двоичные

Пусть имеем целое десятичное число . Преобразовать его в двоичное число – это значит представить в виде

,    (1.1)

где  – двоичные цифры, равные  или .

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

а) делим заданное число  на 2. В результате получаем целую часть частного

  (1.2)

и остаток .

б) делим число  на 2. В результате получаем в частном

   (1.3)

и в остатке  и т.д.

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

Пусть имеем дробное десятичное число <. Требуется определить двоичную дробь

,     (1.4)

где  – двоичные цифры, равные  или .

Цифры двоичного числа можно определить последовательно, начиная с , следующим образом:

а) умножаем заданное число  на 2:

     (1.5)

Отделяем целую часть числа , равную  и дробную часть

   (1.6)

б) умножаем  на 2:

      (1.7)

Целая часть от  равна , а дробная часть

   (1.8)

используется для дальнейшего преобразования.

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

Рассмотрим процесс преобразования десятичного числа  в соответствующее двоичное (см. рисунок 1).

 а)

 б)

Рисунок 1 – Процесс преобразования десятичного числа в двоичное:

а) целая часть; б) дробная часть

Итак,

  1.  Преобразование двоичных чисел в десятичные

Для этого надо двоичное число

     (1.9)

представить в виде

 (1.10)

и непосредственно выполнить все указанные в этой формуле действия.

Рассмотрим процесс преобразования двоичного числа  в соответствующее десятичное (см. рисунок 2).

 а)

 б)

Рисунок 2 – Процесс преобразования двоичного числа в десятичное:

а) целая часть; б) дробная часть

Итак,

2. Кодирование двоичных чисел

2.1. Прямой код числа

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

Примечание 1. Если под поле цифр разрядов выделено больше, чем необходимо для представления числа , то разряды (цифры) числа  заносятся в разрядную сетку ЭВМ в соответствии со своими весами. Код знака числа практически во всех ЭВМ заносится в старший разряд разрядной сетки.

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

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

2.2. Обратный код числа

Для образования обратного кода  отрицательного числа необходимо в знаковом разряде поставить единицу, а все цифровые разряды инвертировать (заменить  на , а  – на ). Очевидно, что

2.3. Дополнительный код числа

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

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

Пример:

Число   Прямой код  Обратный код  Дополнительный код

    

    

3. Формы представления чисел

  1.  Представление чисел в форме с фиксированной запятой

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

Диапазон представления чисел для этого формата .

В зависимости от размеров целой и дробной частей возможны следующие случаи:

1) Если , , то  

2) Если , , то  

3) Если , , то   

4) Если , , то   

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

3.2. Представление чисел в форме с плавающей запятой

В общем виде числа с плавающей запятой имеют следующий вид:

,

где  – мантисса числа ;

       – порядок числа .

Порядок (с учетом знака) показывает, на сколько разрядов и в какую сторону сдвинута запятая при замене формы записи числа с естественной на нормальную. Например, число  можно представить, как  и как .

В двоичной системе исчисления формат машинного изображения чисел с плавающей запятой включает знаковые поля (мантиссы и порядка), поле мантиссы и поле порядка числа и имеет следующий вид:

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

 

   

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

  а)

  б)

Рисунок 3 – Представление двоичных чисел в форме с плавающей запятой:

а) целая часть; б) дробная часть

Примечание 3. Для упрощения операций над порядками применяют представление чисел с плавающей запятой со смещенным порядком:

,

где  – целое положительное число (смещение), .

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

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

Примечание 4. В стандарте IEEE крайние значения порядка (характеристики) зарезервированы и не используются для представления обычных чисел. Максимальное значение характеристики, представленное всеми единицами при положительном знаке числа, зарезервировано для представления значения +∞ при нулевой мантиссе. При знаке минус число с максимальной характеристикой используется для представления -∞ и неопределенности. Значение с минимальной характеристикой, равной нулю, зарезервировано для представления денормализованных чисел (положительных и отрицательных), а также для представления нуля (представляется всеми нулями), причем различают +0 и –0.

Наиболее распространено и удобно для представления в ЭВМ ограничение вида <1. Форма представления чисел, для которых справедливо данное ограничение, называется нормализованной.

Если нормализованное двоичное число положительно (в знаковом разряде стоит ), то в старшем цифровом разряде должна стоять . Если же число отрицательно (в знаковом разряде стоит ), то в старшем цифровом разряде дополнительного или обратного кода должен стоять .

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

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

Например, отрицательное число

        

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

        

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

  1.  Ознакомиться с методическими указаниями к лабораторной работе.
  2.  В соответствии с заданным вариантом (см. таблицу 1) изучить порядок перевода чисел из одной системы исчисления в другую.

Таблица 1–Варианты заданий

№ вар.

А

В

С

1

-10,125

13,75

0,12

2

1,22

-6,82

42,25

3

96,5

4,3

-0,96

4

-12,4

3,33

-24,5

5

21,18

-0,82

14,15

6

-15,42

0,08

-6,45

  1.  Представить десятичные числа в двоичной системе в форме с фиксированной и плавающей точкой. При записи чисел в системе счисления с плавающей точкой применять количество разрядов мантиссы – 8, порядка – 6.
  2.  Изучить порядок записи двоичных чисел в прямом, обратном и дополнительном коде, а также порядок.

Контрольные вопросы и задания

  1.  Каковы способы физического представления данных?
  2.  В чем различия позиционной системы исчисления и непозиционной?
  3.  Каковы преимущества и недостатки десятичной и двоичной систем исчисления?
  4.  Приведите правила перевода из десятичной системы исчисления в двоичную и наоборот.
  5.  Как представить отрицательные числа в двоичном коде?
  6.  Какие основные формы представления чисел в ЭВМ?
  7.  Что такое нормализация и переполнение разрядной сетки?
  8.  Приведите правила образования обратного и дополнительного кода.


 

А также другие работы, которые могут Вас заинтересовать

22922. Поняття фундаментальної (базисної) системи розв’язків 55.5 KB
  Як показано вище множина M всіх розвязків однорідної системи лінійних рівнянь утворює підпростір. Фундаментальною базисною системою розвязків однорідної системи лінійних рівнянь називається базис підпростору всіх її розвязків. Теорема про фундаментальну систему розвязків.
22923. Теорема про розв’язки неоднорідної системи лінійних рівнянь 43 KB
  Теорема про розвязки неоднорідної системи лінійних рівнянь. Нехай дана сумісна неоднорідна система лінійних рівнянь 3 L множина всіх її розвязків а деякий частковий розвязок M множина всіх розвязків відповідної однорідної системи 4. Нехай a=γ1γ2γn і припустимо що b=λ1λ2λn довільний розвязок системи 3 тобто b є L.
22924. ЛЕМА ПРО ДВІ СИСТЕМИ 37.5 KB
  bk дві системи векторів кожен вектор першої системи лінійно визначається через другу систему. Якщо m k то перша система лінійно залежна. Нехай а1 а2 аm і b1 b2 bk дві системи векторів кожен вектор першої системи лінійно виражається через другу систему. Якщо перша система лінійно незалежна то m≤k.
22925. Поняття базису 25.5 KB
  aik лінійно незалежна; Всі вектори системи a1 a2 am лінійно виражаються через ai1ai2. Базисом простору Rn називається система векторів a1 a2 an є Rn така що система a1 a2 an лінійно незалежна; Кожний вектор простору Rn лінійно виражається через a1 a2 an. Звідси α1= α2==αn=0 лінійна коомбінація тривіальна і система лінійно незалежна. Будьякий вектор простору лінійно виражається через e1e2en .
22926. Властивості базисів 33.5 KB
  Оскільки при m n система з m векторів лінійно залежна то m≤n. Якщо m n то за означенням базису всі вектори простору а тому і вектори системи e1e2en лінійно виражаються через базис a1 a2 am .Тоді за лемою про дві системи вектори e1e2en лінійно залежні. Отже В просторі Rn будьяка лінійно незалежна система з n векторів утворює базис простору.
22927. Поняття рангу 47.5 KB
  В довільній системі векторів a1a2am візьмемо всі лінійно незалежні підсистеми. Число векторів в цій фіксованій підсистемі будемо називати рангом системи векторів a1 a2 am . Таким чином рангом системи векторів називається максимальна кількість лінійно незалежних векторів в системі. Зрозуміло що ранг лінійно незалежної системи дорівнює числу всіх векторів в системі.
22928. Поняття рангу матриці 28 KB
  Ранг системи векторів a1 a2 am називається горизонтальним рангом матриці або рангом матриці за рядками і позначається . Стовпчики матриці A можна розглядати як m вимірні вектори b1 b2bn з дійсними координатами елементи простору Rm. Ранг системи векторів b1 b2bn називається вертикальним рангом матриці A або рангом матриці A за стовпчиками і позначається rbA.
22929. Поняття базисного мінору 15.5 KB
  Припустимо Поняття базисного мінору. Припустимо Δr деякий мінор порядку r матриці A r≤mr≤n. Мінор порядку r1 матриці називається оточуючим для мінора Δr якщо його матриця містить в собі матрицю мінору Δr .
22930. Існування базисного мінора 21 KB
  Для мінора Δ1 складаються всі можливі оточуючі мінори. Для цього послідовно до мінора Δ1 дописуються всі можливі рядки і всі можливі стовпчики. Якщо всі оточуючі мінори дорівнюють нулю то за означенням мінор Δ1 базисний і процес закінчується . Для мінора Δ2 складаються всі можливі оточуючі мінори послідовно дописуючи всі можливі рядки і стовпчики.