Кодирование и обработка в компьютере целых чисел со знаком

Кодирование целых чисел, имеющих символ, можно выполнить 2-мя методами. В первом варианте один (старший) разряд машинном слове отводится для записи знака числа; при всем этом договорились кодировать символ «+» нулем, символ «-» — единицей. Под запись самого числа, разумеется, остается 15 двоичных разрядов, что обеспечивает наибольшее значение числа Zmax = 215 — 1 = 3276710. Такое представление чисел именуется прямым кодом. Но его применение усложняет порядок обработки чисел; к примеру, операция сложения 2-ух чисел с различными знаками должна быть заменена операцией вычитания наименьшего из большего с следующим присвоением результату знака большего по модулю числа. Другими словами, операция сопровождается огромным количеством проверок критерий и выработкой признаков, в согласовании с которыми выбирается то либо другое действие.

Другим вариантом является представление чисел со знаком в дополнительном коде. Мысль построения дополнительного кода довольно ординарна: на оси целых положительных чисел, помещающихся в машинное слово (0 ÷ 65535), сместим положение «О» на середину интервала; числа, попадающие в первую половину (0 ÷ 32767) будем считать положительными, а числа из 2-ой половины (32768 ÷ 65535) — отрицательными. В данном случае судить о знаке числа можно будет по его величине и в очевидном виде выделение знака не будет нужно. К примеру, 1000000000000012 = 3276910 является кодом отрицательного числа, а 0000000000000012 = 110 — кодом положительного. Принадлежность к интервалу кодов положительных либо отрицательных чисел видна по состоянию старшего бита — у кодов положительных чисел его значение «0», отрицательных — «1». Это припоминает представление со знаком, но не является таким, так как употребляется другой принцип кодировки. Его применение позволяет поменять вычитание чисел их суммированием в дополнительном коде. Убедимся в этом чуток позже после того, как обсудим метод построения дополнительного кода целых чисел.

Дополнением (D) k-разрядного целого числа Z в системе счисления р именуется величина D(ZP, k) = pk — Z. Данную формулу можно представить в ином виде: D(ZP, k) = ((pk — 1) — Z) + 1. Число pk1 согласно (4.8), состоит из k больших в данной системе счисления цифр (р — 1), к примеру, 999910, FFF16 либо 11111112. Потому (pk1) — Z можно получить методом дополнения до р-1 каждой числа числа Z и следующим прибавлением к последнему уровню 1.

content

Share
Published by
content

Recent Posts

Магнитное поле тока. Магнитные силовые линии

Разница между энергией электрического поля и энергией магнитного поля примерно такая же, как между энергией,…

1 год ago

Постоянные магниты

Когда-то легендарный пастух Магнес, нашел природный магнитный камень, притягивающий железо. В последствии этот камень назвали магнетит или магнитный…

1 год ago

Соединение конденсаторов

В электрических цепях применяются различные способы соединения конденсаторов. Соединение конденсаторов может производиться: последовательно, параллельно и последовательно-параллельно (последнее иногда называют смешанное соединение конденсаторов). Существующие…

1 год ago

Обозначение конденсаторов

Обозначение конденсаторов на схемах определено ЕСКД ГОСТ 2.728-74. Обозначения условные графические в схемах. Резисторы, конденсаторы. Итак,…

1 год ago

Виды конденсаторов

Узнав, что же такое конденсатор, рассмотрим, какие бывают виды конденсаторов. Итак, виды конденсаторов можно классифицировать по…

1 год ago

Энергия поля конденсатора

Вся энергия заряженного конденсатора сосредотачивается в электрическом поле между его пластинами. Энергию, накоп­ленную в конденсаторе, можно определить…

1 год ago