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

Двоично-десятичная система не экономична с точки зрения реализации технического построения машины (примерно на 20 % увеличивается потребное оборудование), но очень удобна при подготовке задач и при программировании. В двоично-десятичной системе счисления основанием системы счисления является число десять, но каждая из 10 десятичных цифр (0, 1, ..., 9) изображается при помощи двоичных цифр, то есть кодируется двоичными цифрами. Для представления одной десятичной цифры используются четыре двоичных. Здесь имеется, конечно, избыточность, поскольку четыре двоичных цифры (или двоичная тетрада) могут изобразить не 10, а 16 чисел, но это уже издержки производства в угоду удобства программирования. Существует целый ряд двоично-кодированных десятичных систем представления чисел, отличающихся тем, что определенным сочетаниям нулей и единиц внутри одной тетрады поставлены в соответствие те или иные значения десятичных цифр 1 .

В наиболее часто используемой естественной двоично-кодированной десятичной системе счисления веса двоичных разрядов внутри тетрады естественны, то есть 8, 4, 2, 1 (табл. 3.1).

Таблица 3.1. Таблица двоичных кодов десятичных и шестнадцатеричных цифр

Цифра Код Цифра Код
A
B
C
D
E
F

Например, десятичное число 9703 в двоично-десятичной системе выглядит так: 1001011100000011.

18 вопрос. ос. Логические основы работы ЭВМ. Операции алгебры логики

Алгебра логики предусматривает множество логических операций. Однако три из них заслуживают особого внимания, т.к. с их помощью можно описать все остальные, и, следовательно, использовать меньше разнообразных устройств при конструировании схем. Такими операциями являются конъюнкция (И), дизъюнкция (ИЛИ) и отрицание (НЕ). Часто конъюнкцию обозначают & , дизъюнкцию - || , а отрицание - чертой над переменной, обозначающей высказывание.

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

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

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

19 вопрос. Основные правила алгебры логики

Обычная запись этих законов в формальной логике:

20 вопрос. Таблица истинности

Таблицы истинности

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

21 Вопрос. Логические элементы. Их названия и обозначения на схема

Как же использовать полученные нами знания из области математической логики для конструирования электронных устройств? Нам известно, что О и 1 в логике не просто цифры, а обозначение состояний какого-то предмета нашего мира, условно называемых "ложь" и "истина". Таким предметом, имеющим два фиксированных состояния, может быть электрический ток. Устройства, фиксирующие два устойчивых состояния, называются бистабильными (например, выключатель, реле). Если вы помните, первые вычислительные машины были релейными. Позднее были созданы новые устройства управления электричеством - электронные схемы , состоящие из набора полупроводниковых элементов. Такие электронные схемы, которые преобразовывают сигналы только двух фиксированных напряжений электрического тока (бистабильные) , стали называть логическими элементами.

Логический элемент компьютера - это часть электронной логичеcкой схемы, которая реализует элементарную логическую функцию.

Логическими элементами компьютеров являются электронные схемы И, ИЛИ, НЕ, И-НЕ, ИЛИ-НЕ и другие (называемые также вентилями ), а также триггер.

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

Чтобы представить два логических состояния - “1” и “0” в вентилях, соответствующие им входные и выходные сигналы имеют один из двух установленных уровней напряжения. Например, +5 вольт и 0 вольт.

Высокий уровень обычно соответствует значению “истина” (“1”), а низкий - значению “ложь” (“0”).

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

Работу логических элементов описывают с помощью таблиц истинности.

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

Понятие смешанной системы счисления

Среди систем счисления выделяют класс так называемых смешанных систем счисления .

Определение 1

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

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

Примером смешанной системы счисления является двоично-десятичная система.

Практическое обоснование использования двоично-десятичной системы счисления

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

Замечание 1

В некоторых типах ЭВМ в арифметико-логических устройствах (АЛУ) имеются специальные блоки десятичной арифметики, которые выполняют операции над числами, представленными в двоично-десятичном коде. Это позволяет в некоторых случаях существенно повысить производительность ЭВМ.

К примеру, в автоматизированной системе обработки данных используется большое количество чисел, а вычислений при этом немного. В подобном случае операции перевода чисел из одной системы в другую существенно превысили бы время выполнения операций по обработке информации. Микропроцессоры же используют чистые двоичные числа, однако при этом понимают и команды преобразования в двоично-десятичную запись. АЛУ AVR-микроконтроллера (как и других микропроцессоров) выполняет элементарные арифметические и логические операции над числами, представленными в двоичном коде, а именно:

    считывает результаты преобразования АЦП;

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

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

Принципы построения двоично-десятичной системы счисления

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

Например: $925_{10} = 1001 0010 0101_{2-10}$.

Рисунок 1.

В данной записи последовательные четверки двоичных разрядов изображают цифры $9$, $2$ и $5$ десятичной записи соответственно.

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

Хотя в двоично-десятичной записи используются только цифры $0$ и $1$, она отличается от двоичного изображения данного числа, так как десятичный эквивалент двоичного числа в несколько раз больше десятичного эквивалента двоично-десятичного числа.

Например:

$1001 0010 0101_{(2)} = 2341_{(10)}$,

$1001 0010 0101_{(2)} = 925_{(2-10)}$.

Такая запись довольно часто используется как промежуточный этап при переводе числа из десятичной системы в двоичную и обратно. Так как число $10$ не является точной степенью числа $2$, то используются не все $16$ тетрад (тетрады, изображающие числа от $A$ до $F$ отбрасываются, так как эти числа считаются запрещенными), алгоритмы же арифметических операций над многозначными числами в этом случае более сложные, чем в основных системах счисления. И, тем не менее, двоично-десятичная система счисления используется даже на этом уровне во многих микрокалькуляторах и некоторых компьютерах.

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

Например: $75+18=93$.

$10001101 \ (8D)$

В младшей тетраде появилась запрещенная цифра $D$. Прибавим к младшей тетраде $6$ и получим:

$10010011 \ (93)$

Как видим, несмотря на то, что сложение осуществлялось в двоичной системе счисления результат операции получился в двоично-десятичной.

Замечание 2

Поразрядное уравновешивание часто осуществляют на основе двоично-десятичной системы счисления . Применение двоичной и двоично-десятичной системы счисления наиболее целесообразно, поскольку в этом случае число тактов уравновешивания оказывается наименьшим среди прочих систем счисления. Заметим, что применение двоичного кода позволяет примерно на $20\%$ уменьшить время обработки компенсирующего напряжения по сравнению с двоично-десятичным.

Преимущества использования двоично-десятичной системы счисления

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

Применение двоично-десятичной системы счисления совместно с одной из основных систем счисления (двоичной) позволяет разрабатывать и создавать высокопроизводительные ЭВМ, так как использование блока десятичной арифметики в АЛУ исключает при решении задач необходимость программированного перевода чисел из одной системы счисления в другую.

Поскольку две двоично-десятичные цифры составляют $1$ байт, с помощью которого можно представить значения чисел от $0$ до $99$, а не от $0$ до $255$, как при использовании $8$-разрядного двоичного числа, то используя $1$ байт для преставления каждых двух десятичных цифр, можно формировать двоично-десятичные числа с любым требуемым числом десятичных разрядов.


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

Двоично-десятичная система не экономична с точки зрения реализации технического построения машины (примерно на 20 % увеличивается требуемое оборудование), но очень удобна при подготовке задач и при программировании. В двоично-десятичной системе счисления основанием системы счисления является число 10, но каждая десятичная цифра (0, 1, ..., 9) изображается, то есть кодируется, двоичными цифрами. Для представления одной десятичной цифры используются четыре двоичных. Здесь, конечно, имеется избыточность, поскольку 4 двоичных цифры (или двоичная тетрада) могут изобразить не 10, а 16 чисел, но это уже издержки производства в угоду удобству программирования. Существует целый ряд двоично-кодированных десятичных систем представления чисел, отличающихся тем, что определенным сочетаниям нулей и единиц внутри одной тетрады поставлены в соответствие те или иные значения десятичных цифр. В наиболее часто используемой естественной двоично-кодированной десятичной системе счисления веса двоичных разрядов внутри тетрады естественны, то есть 8, 4, 2, 1 (табл. 6).

Таблица 6

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

Например, десятичное число 5673 в двоично-десятичном представлении имеет вид 01010110011100011.

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

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

При переводе удобно пользоваться таблицей степеней двойки:

Таблица 7.

Степени числа 2

n (степень)

Пример. Число перевести в десятичную систему счисления.

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

При переводе удобно пользоваться таблицей степеней восьмерки:

Таблица 8.

Степени числа 8

n (степень)
8 n

Пример. Число 75013 8 перевести в десятичную систему счисления.

Двоично-десятичная система счисления. Десятичные цифры от 0 до 9 заменяются представляющими их двоичными тетрадами: 0=0000, 1=0001, 2=0010, 3=0011, 4=0100, 5=0101, 6=0110, 7=0111, 8=1000 и 9=1001. Такая запись очень часто используется как промежуточный этап перевода числа из десятичной системы в двоичную или обратно. Так как 10 не является точной степенью 2, то используются не все 16 тетрад, а алгоритмы арифметических операций над многозначными числами здесь более сложны, чем в основных системах счисления. И тем не менее, двоично-десятичная система счисления применяется даже на этом уровне во многих микрокалькуляторах и некоторых компьютерах (в частности, «Ямаха» стандарта MSX).

Поскольку человеку наиболее привычны представление и арифметика в десятичной системе счисления, а для компьютера - двоичное представление и двоичная арифметика, была введена компромиссная система двоично-десятичной записи чисел. Такая система чаще всего применяется там, где существует необходимость частого использования процедуры десятичного ввода-вывода. (электронные часы, калькуляторы, АОНы, и т.д.). В таких устройсвах не всегда целесообразно предусматривать универсальный микрокод перевода двоичных чисел в десятичные и обратно по причине небольшого объема программной памяти.

Принцип построения этой системы достаточно прост: каждая десятичная цифра преобразуется прямо в свой десятичный эквивалент из 4 бит, например: 369110=0011 0110 1001 0001DEC:

Десятичное число 3 6 9 1 Двоично-десятичное число 0011 0110 1001 0001

Преобразуем двоично-десятичное число 1000 0000 0111 0010 в его десятичный эквивалент. Каждая группа из 4 бит преобразуется в её десятичный эквивалент. Получим 1000 0000 0111 0010DEC = 807210:

Двоично-десятичное число 1000 0000 0111 0010 Десятичное число 8 0 7 2

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

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

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

В данном разделе рассматриваются программы преобразования двоичных чисел в двоично-десятичные.

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

В настоящее время распространены два формата представления десятичных чисел в микропроцессорах - упакованный двоично-десятичный код (BCD-Binary-Coded Decimal) и неупакованный десятичный код .

Упакованный BCD-код - это такое представление десятичного числа, когда каждая десятичная цифра представляется 4-х битным двоичным позиционным кодом 8-4-2-1. При этом байт содержит две десятичные цифры. Младшая десятичная цифра занимает правую тетраду (биты 3: 0), старшая - левую тетраду (биты 7: 4). Многоразрядные BCD-числа занимают несколько смежных байт. Если число является знаковым, то для представления знака в BCD-формате отводится старшая тетрада старшего байта. Для кодирования знака можно использовать шесть двоичных кодовых комбинаций, которые не используются для представления десятичных цифр. Это коды 1010-1111 (A-F в шестнадцатеричном представлении). Обычно для кодирования знака плюс применяют код 1100 (С), а для знака минус - 1101 (D).

Неупакованный десятичный код является подмножеством международной таблицы кодирования символов ASCII (Таблица 1). Видно, что для хранения неупакованных десятичных чисел требуется в два раза больше памяти, так как каждая цифра представляется 8-битным кодом. Таблица 1: ASCII-коды десятичных цифр

2. Преобразование целых 16-битных чисел в двоично-десятичные числа

На сайте www.atmel.com предлагается программа "bin2bcd16" для преобразования целых 16-битных двоичных чисел в двоично-десятичные упакованные числа. В данной статье рассматривается программа "bin16bcd5" (см. Приложение, Программа 1), написанная Терешкиным А. В. согласно алгоритму, изложенному в , и выполняющая ту же задачу. Последняя программа по быстродействию, длине кода и количеству используемых регистров оказалась более эффективной, чем первая.

Алгоритм программы "bin16bcd5" заключается в следующем. Предположим, что имеется целое беззнаковое 16-битное число (диапазон от 0 до 65535). Очевидно, что необходимо найти 5 десятичных цифр. Способ преобразования заключается в том, чтобы, вычитая из исходного числа число 10000, сначала определить десятичную цифру десятков тысяч. Затем находится цифра тысяч последовательным вычитанием числа 1000 и т. д. Вычитание каждый раз производится до получения отрицательной разности с подсчетом числа вычитаний. При переходе к определению каждого следующего десятичного разряда в регистрах исходного числа восстанавливается последняя положительная разность. После того, как будет найдена десятичная цифра десятков, в регистрах исходного числа останется десятичная цифра единиц.

Программа "bin16ASCII5" (см. Приложение, Программа 2) преобразует целое двоичное 16-битное число в десятичное неупакованное число. При этом используется тот же алгоритм.

3. Преобразование двоичной дроби в двоично-десятичную дробь

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

0.A-1A-2 ... A-m = A-1*2-1 + A-2*2-2 + ... A-m*2-m

Из этого представления следует алгоритм преобразования (Рис. 2), который содержит m шагов. На каждом шаге к двоично-десятичному результату прибавляется очередная двоичная цифра и весь результат делится на 2.

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

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

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

4. Преобразование чисел с плавающей точкой в двоично-десятичные числа

Представление чисел с плавающей точкой имеет следующий вид:

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

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

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

Двоично-кодированная десятичная система счисления (D-коды)

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

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

Двоично-кодированная десятичная система является комбинированной системой счисления, которая обладает достоинствами двоичной и удобством десятичной системы.

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

Количество различных двоичных тетрад N = 2 4 = 16. Для кодирования двоичных цифр из них используется только десять. Наличие избыточных комбинаций позволяет иметь различные D -коды. В ЭВМ наибольшее применение нашли системы кодирования 8421 - D 1 , 2421 - D 2 , (8421+3) - D 4 . Появляющаяся избыточность приводит к множеству кодирования десятичных цифр, из которых следует выбирать оптимальную.

Код 8421 (табл. 2.4) называется кодом с естественными весами , где цифры 8,4,2,1 - веса двоичных разрядов тетрад. Любая десятичная цифра в этом коде изображается ее эквивалентом в двоичной системе счисления. Этот код нашел наибольшее применение при кодировании десятичных чисел в устройствах ввода-вывода и при построении операционных устройств десятичной арифметики.

Особенность кодов D 2 и D 4 (8421+3) или кода с избытком 3 в том, что кодирование любой десятичной цифры и дополнительной к ней цифры до 9 осуществляется взаимно дополняющими тетрадами. Эта особенность дает простой способ получения дополнения до 9 путем инвертирования двоичных цифр тетрады. Такие коды удобно использовать для организации операции вычитания при построении десятичных сумматоров.

Таблица 2.4

Примеры кодирования десятичных цифр тетрадами

Десятичная цифра

Эквиваленты в D -кодах

D 1 (8421)

D 2 (2421)

D 4 (8421+3)

Приведем пример кодирования десятичного числа A = 8371 в двоично-кодированной десятичной системе счисления:

D 1: A = 1000 0011 0111 0001 (2/10) ;

D 2: A = 1110 0011 1101 0001 (2/10) ;

D 4: A = 1011 0110 1010 0100 (2/10).

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

1. Однозначность. Каждой десятичной цифре должен соответствовать определенный, отличающийся от других, двоичный код.

Невыполнение данного требования приводит к неоднозначности результатов.

2. Упорядоченность. Большим десятичным цифрам должны соответствовать большие тетрады десятичного кода и, наоборот, меньшим - меньшие тетрады.

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

3. Четность. Четным цифрам должны соответствовать четные тетрады, нечетным цифрам - нечетные тетрады. Соответствие может быть отмечено любым способом.

Выполнение данного требования необходимо для выполнения округления результата.

4. Дополнительность. Если x1 и х2 - такие две цифры, для которых х1+х2 = 9 и цифре x1 сопоставляется тетрада, то цифре х2, если удовлетворяется требование дополнительности, должна сопоставляться тетрада, получаемая путем инверсии двоичных разрядов кода цифры х1.

Требование дополнительности необходимо для упрощения реализации дополнительных и обратных кодов десятичных чисел.

5. Весомозначность. Должны существовать четыре целых положительных числа: pз,р2,p1,p0, называемых весами, с помощью которых можно определить десятичную цифру х по значению двоичной тетрады, сопоставленной х, по формуле

Выполнение данного требования способствует декодированию.

6. Непрерывность. Непрерывной последовательности изменений значения цифр должна соответствовать непрерывная последовательность изменений значения тетрад.

Ни один из десятичных кодов не удовлетворяет одновременно всем шести перечисленным требованиям.

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

Достоинствами двоично-кодированной десятичной системы счисления относительно двоичной являются:

  • · отсутствие необходимости перевода исходных данных и результатов из одной системы счисления в другую;
  • · удобство контроля промежуточных результатов путем вывода их на индикацию для внутреннего наблюдения;
  • · более широкие возможности для автоматического контроля из-за наличия в D -кодах избыточных комбинаций.

D -коды применяют для решения экономических задач, которые характеризуются большим объемом исходных данных, сравнительной простотой и малым объемом выполняемых над ними преобразований и большим количеством результатов вычислений. Эта система широко используется в калькуляторах и персональных микроЭВМ.


Close