31473

Дослідження методів кодування чисел в комп’ютері з використанням алгоритмічних мов високого рівня

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

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

Для виконання операцій з двійковими числами в ЕОМ використовуються прямий зворотній додатковий модифікований зворотній і додаткові коди. Додатковий код відємного числа отримується додаванням одиниці молодшому розряду зворотнього коду цього числа. Для цього виконаємо кодування: отримаємо зворотній та додатковий коди для чисел А1 та А2. Таблиця 1 Варіанти завдання Перевести відємне дійсне число: № код прямий додатковий зворотній додатковий додатковий прямий додатковий зворотній прямий додатковий зворотній...

Украинкский

2013-09-01

92.5 KB

9 чел.

Лабораторна робота 1.4

Дослідження методів кодування чисел в комп’ютері з використанням алгоритмічних мов високого рівня.

Мета лабораторної роботи   ознайомитись з методами кодування чисел, отримати і закріпити практичні навички з побудови алгоритмів і програм.

Короткі теоретичні відомості

Необхідність кодування чисел визначається тим, що в ЕОМ неможлво або нераціонально вводити числа у тому вигляді, в якому вони зображуються людиною на папері.

При обчисленні ЕОМ оперує як з додатніми, так і з від’ємними числами. При цьому обчислення можна замінити додаванням, скориставшись доповненням відємного числа. Доповненням числа 12510 буде число *7510, числа 12516 буде число ЕDВ16, для числа 11012 - число 112. Ці доповнення отримують наступним чином:

_1*0010            _100016            _10000*

12510                12516                1*01*

87510               EDB16                   112

Так як у ЕОМ є тільки пристрої, які виконують додавання, то віднімання замінюється додаванням спеціальних кодів чисел. Для виконання операцій з двійковими числами в ЕОМ використовуються прямий, зворотній, додатковий, модифікований зворотній і додаткові коди. Зображення додатніх чисел у всіх кодах однакове, а відємних різне.

Прямой код співпадає з записом самого числа. У знаковому розряді записується 0 (знак +) або 1 (знак-), а потім записується саме число.

Наприклад, числа: А1=+*,10*0 и А2= - *,10*0 у прямому коді записуюься у вигляді: [А1]пр=0 1010 і [А2]пр=1 1*10.

Приклад: В* = +0,1*1001                 [В*]пр.= 0 *0*001;

В2 = - 0,*1101                  [В2]пр.= 1 *1101.

Зворотній код відємного числа отримується наступним чином: у знаковому розряді записується одиниця, а в цифрових розрядах нулі замінюються одиницями, а одиниці - нулями.

Наприклад, числа А1=+0,1010 та А2= - 0,101* у зворотньому коді записуються у вигляді [А1]обр.=0 101* і [А2]обр.=1 0101.

Приклад: В1 = +0,101100                 [В1]зв.= 0 101110;

В2 = - 0,010101                [В2]зв.= 1 1*1*1*.

Додатковий код відємного числа отримується додаванням одиниці молодшому розряду зворотнього коду цього числа.

Наприклад: числа А1=+0,1010 та А2= - 0,101* у додатковому коді записуються у вигляді: [А1]дод.=* 101* та [А*]дод.=1 0*10.

Приклад: В1 = +0,00110                   [В1]дод.= 0 0*110;

В2 = - 0,00*101                [В2]дод.= 1 110011.

Модифікований код відрізняється тим, що на зображення знака числа у ньому відводиться два розряди, що дає можливість виявити переповнення розрядної сітки.

Наприклад, для числа А= - 0,101* отримаємо [А]мзв.=11 *101, [А]мдод.=11 0110.

Перехід від зворотнього та додаткового кодів до прямого здійснюється аналогічно переходу від прямого коду до зворотнього і додатковому.

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

Наприклад, у зворотньому коді операції алгебраїчного додавання виконуються слідуючим чином:

1) а=0,10*0>0                          [а]зв.=0 1010

   b=0,0010>0                          [в]зв.=0 0010

                                                  [х]зв.=0 1100

                                                  х= 0,1100

2) а= - *,1010<0

    b= 0,1100>0

3) а=0,*010>*

    b= - 0,0010<0

*) a= - 0,1010<0

    b= - 0,0010<0

          [а]зв.=1 0101

          [в]зв.=0 1100

   10 0001

           [х]зв.=0 001*

    х= 0,0010

           [а]зв.= 0 1010

           [в]зв.= * 1101

10 011*

           [х]зв.= 0 100*

х= 0,1000

           [a]зв.=1 0101 [b]зв.=* 1101

11 00*0

[*]зв.=* 0011

*= - 0,1100

Додавання та віднімання двійкових чисел у додатковому коді відбувається порозрядно, включаючи і знакові розряди. Одиниця переносу, яка вийшла за межі знакового розряду, відкидається.

Приклад:

*= - 0,*01*<0 b= - 0,0010<0

[a]дод.=1 0110 [b]дод.=1 1*10

11 01*0

[х]дод.=1 010* [х]зв.=1 *0*1

х= - *,1100

Наприклад, маємо число А1 = 0,10*112 та А2 = 0,01*2. Потрібно виконати дію А1-А2

_0,10111

0,01*00

0,01011

Замінимо операцію відніманя додаванням. Для цього виконаємо кодування: отримаємо зворотній та додатковий коди для чисел А1 та А2.

[A*]зв.= * 10111               [A2]зв.= * 1001*

[A*]зв.= 0 *0*1*                [*2]дод.= 1 1*100

Виконаємо операцію додавання отриманих кодів

+ [A1]зв.= * 10111

[A*]зв.= 1 10011

10 010*0

[A1+A*]озв.= 0 01011

A1+A2 = 0,0101*

+[A1]зв.= 0 1011*

[A2]зв.= * 1010*

10 *1*11

[A*+A2]зв.= 0 01011

*1+A2 = *,0101*

ЕОМ можуть обробляти як числову, так і текстову інформацію. Текстова інформація (російські і латинські літери, розділові знаки и т.д.), як і числа, кодуються послідовністю двійкових цифр. При використанні для таких цілей 8-розрядних кодів (байтів) можна закодувати 256 різних символів (табл.1). Така система кодування носит назву КОИ-7 і принята у більшості мікроЕОМ.

Таблиця 1

Варіанти завдання

Перевести відємне дійсне число:

код

  1.  

прямий -> додатковий

  1.  

зворотній -> додатковий

  1.  

додатковий -> прямий

  1.  

додатковий -> зворотній

  1.  

прямий -> додатковий

  1.  

зворотній -> додатковий

  1.  

додатковий -> прямий

  1.  

додатковий -> зворотній

  1.  

прямий -> додатковий

  1.  

зворотній -> додатковий

  1.  

додатковий -> прямий

  1.  

додатковий -> зворотній

  1.  

зворотній -> додатковий

  1.  

додатковий -> прямий

  1.  

додатковий -> зворотній

 

Контрольні питання

  1.  Дайте визначення прямого, зворотного, додаткового кодів.
  2.  Яким чином отримуються числа у прямому, зворотному, додатковому кодах?
  3.  Як виконуються операції додавання та віднімання у кодах?
  4.  Чи можливо замінити операції (віднімання додаванням)?


 

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

1037. Модуляция гармонических колебаний, импульсная модуляция, манипуляция 383.5 KB
  Изучение методов модуляции, спектров сигналов при различных видах модуляции. Амплитудная модуляция. АИМ1. Частотная модуляция. Фазовая модуляция.
1038. Юридична деонтологія як правознавча наука та навчальна дисципліна 506.5 KB
  Виникнення деонтології як науки. Становлення та розвиток юридичної деонтології. Загальна характеристика юридичної діяльності. Політична культура юриста. Навчальний процес у вищих закладах юридичної освіти. Юридична практична діяльність. Основні юридичні спеціальності. Професійно-особистісні якості юриста.
1039. Практичні питання філософії 489.5 KB
  Кантівська критика метафізики. Поняття буття і предметне самовизначення філософії. Аргумент реторсії у метафізиці. Предметно-чуттєвий та трансцендентальний досвід. Універсалізм і релятивізм у розумінні природи знання. Фундаменталізм і антифундаменталізм у розв’язанні проблеми обгрунтування знання. Приклади теорій пізнання, побудованих на засадах фундаменталізму та антифундаменталізму. Структуралістська версія філософської антропології. Етапи розвитку і основні ідеї середньовічної філософії.
1040. Основы дизайна 505 KB
  История понятие термина дизайн. Отрасли дизайна. Дизайн городской среды. Колористика и суперграфика. Визуальная идентификация. Ландшафтный дизайн.
1041. Арифметико-логические основы электронных вычислительных цифровых машин системы счисления 475 KB
  Правила использования логических функций. Принципы организации вычислительного процесса. Обобщенная структурная схема ЭВМ. В режиме разомкнутого контура. Режим непрямого цифрового управления. Цикл проектирования МП системы. Режим обмена процессор-память. Микропроцессорный комплект с фиксированной разрядностью 580 серии. Обобщенная структурная схема МП контроллера.
1042. Исследование кривыx второго порядка 253 KB
  Классификация кривых второго порядка. Построение однополостного гиперболоида в канонической системе координат. Исследование формы поверхности второго порядка методом сечения плоскостями. Исследование кривой по каноническому уравнению.
1043. Традиционные русские рукопашные состязания и их особенности на Тамбовщине 502 KB
  Генезис и эволюция рукопашных состязаний русских. Особенное и общее в формах традиционных рукопашных состязаний русских и других народов, региональные особенности на Тамбовщине. Исторические формы состязаний и региональные особенности в Тамбовской губернии. Борьба с формированием предварительного захвата. Виды рукопашных состязаний в Тамбовской губернии в конце XIX - первой половине XX веков. Реконструкция конкретно-исторической модели. Генезис и эволюция рукопашных состязаний русских.
1044. Счётчики. Синхронный счётчик на D-триггерах и К=10 341 KB
  Синхронный счётчик на D-триггерах и К=10. Синхронный счётчик на JK-триггерах и К=10. Создание субблока счётчика. Счётчик с Ксч=100 на D- и JK- триггерах. Овладение методом синтеза синхронных счетчиков, анализ работоспособности проектируемых схем.
1045. Міжнародний кримінальний суд: структура та компетенція 458.5 KB
  Історичні передумови створення та функціонування постійно діючої інституції у сфері міжнародного кримінального судочинства. Зародження ідеї та перші спроби створення постійно діючої інституції у сфері міжнародної кримінальної юстиції. Створення військових трибуналів ad hoc як основний етап становлення міжнародної кримінальної юстиції.