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.  Чи можливо замінити операції (віднімання додаванням)?


 

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

19240. СИСТЕМЫ ЭНЕРГОСНАБЖЕНИЯ ТЕРМОЯДЕРНЫХ УСТАНОВОК 731.5 KB
  Лекция 3 СИСТЕМЫ ЭНЕРГОСНАБЖЕНИЯ ТЕРМОЯДЕРНЫХ УСТАНОВОК Оценка требуемых параметров систем энергоснабжения термоядерных установок. Способы нагрева плазмы: омический или джоулев нагрев плазмы адиабатический нагревинжекция пучков быстрых нейтралов ВЧ методы н
19241. ТИПЫ ДРЕЙФОВЫХ ДВИЖЕНИЙ ЧАСТИЦ В ПЛАЗМЕ ТЕРМОЯДЕРНЫХ УСТАНОВОК ТИПА ТОКАМАК 850 KB
  Лекция № 4. типы дрейфовых движений частиц в плазме термоядерных установок типа токамак Дрейф в неоднородном поле центробежный и градиентный поляризационный дрейф тороидальный дрейф и вращательное преобразование тороидальной магнитной конфигурации Ра...
19242. АДИАБАТИЧЕСКИЕ ИНВАРИАНТЫ ДЛЯ ДВИЖЕНИЯ ЧАСТИЦ В МАГНИТНОМ ПОЛЕ 967.5 KB
  Лекция 5 Адиабатические инварианты для движения частиц в магнитном поле Инвариантность магнитного момента частицы во времени инвариантность частицы в постоянном во времени и неоднородном в пространстве магнитном пол инвариантность величины vl ...
19243. ПРИМЕНЕНИЕ АДИАБАТИЧЕСКОГО И ДРЕЙФОВОГО ПРИБЛИЖЕНИЙ. ОТКРЫТЫЕ МАГНИТНЫЕ ЛОВУШКИ 716.5 KB
  Лекция 6 Применение адиабатического и дрейфового приближений. Открытые магнитные ловушки. Квазистационарные открытые системы: пробкотрон. Желобковая неустойчивость. Принцип €œMin.B€. Плазменные центрифуги. Зеркальные ловушки пробкотроны На использовании ад
19244. НЕОКЛАССИЧЕСКАЯ ДИФФУЗИЯ В МАГНИТНОМ ПОЛЕ ТОКАМАКА. ПРОВОДИМОСТЬ ПЛАЗМЫ В МАГНИТНОМ ПОЛЕ 608.5 KB
  Лекция 7 Неоклассическая диффузия в магнитном поле токамака. Проводимость плазмы в магнитном поле. Пролетные и запертые частицы. Три режима потерь €œбанановый€ €œплато€ и режим ПфиршаШлютера бомовская диффузия соотношение D и D неоклассическая диэлектрич
19245. ИСПОЛЬЗОВАНИЕ МГД ПРИБЛИЖЕНИЯ ДЛЯ АНАЛИЗА ПЛАЗМЕННЫХ КОНФИГУРАЦИЙ В ТЕРМОЯДЕРНЫХ УСТАНОВКАХ 178.5 KB
  Лекция 8 Использование МГД приближения для анализа плазменных конфигураций в термоядерных установках Уравнения МГД обобщенный закон Ома диффузия магнитного поля в плазму магнитное давлении параметр удержания . Идеальная одножидкостная гидродинамика плаз
19246. РАВНОВЕСИЕ ПЛАЗМЫ В ТЕРМОЯДЕРНЫХ УСТАНОВКАХ. ИМПУЛЬСНЫЕ СИСТЕМЫ. Z-ПИНЧИ 5.75 MB
  Лекция 9 Равновесие плазмы в термоядерных установках. Импульсные системы. Zпинчи. Проблемы равновесия плазменных конфигураций МГДустойчивость плазмы лежащей на магнитном поле устойчивость скинированного пинча. Важный круг задач в которых с успехом примен...
19247. КОЛЕБАНИЯ И ВОЛНЫ В ПЛАЗМЕ ТЕРМОЯДЕРНЫХ УСТАНОВОК 1.34 MB
  Лекция 10 Колебания и волны в плазме термоядерных установок Использование явления отсечки низкочастотной поперечной волны для диагностики плазмы колебания и волны в незамагниченной плазме; аналогия и различия с газом; заряженность частиц и различие масс дисперс...
19248. КОЛЕБАНИЯ И ВОЛНЫ В ПЛАЗМЕ В МАГНИТНОМ ПОЛЕ ТЕРМОЯДЕРНЫХ УСТАНОВОК 2.65 MB
  Лекция 11 Колебания и волны в плазме в магнитном поле термоядерных установок Теорема €œвмороженности€ магнитногополя. Колебания и волны в замагниченной плазме: магнитный звук скорость Альфена гибридные частоты магнитогидродинамические волны гиротропность п