Читаем Искусство схемотехники. Том 2 (Изд.4-е) полностью

Например, в широко используемом коде ASCII (см. разд. 10.19) малое «а» в ASCII-представлении есть 01100001 (61 в шестнадцатеричном коде, который записывается как 61Н), «Ь» есть 62Н и т. д. Таким образом, слово "nerd" может быть сохранено в двух 16-битных словах, которые имеют значения 6D65H и 7274Н. Как другой пример, размещение памяти в компьютере с памятью 64К (65536 байт) может определяться 2-байтным адресом, поскольку 216 = 65536, наинизший адрес есть 0000Н, наивысший — FFFFH, вторая половина памяти начинается с 8000Н, а четвертая четверть памяти — с СОООН. Вы случайно можете встретить «восьмеричную» запись (основание 8), к сожалению, в ранних ЭВМ были приняты 12- и 32-разрядные слова, которые использовали 6-разрядное представление буквенно-цифровых знаков. Поскольку 6-разрядные знаки было логично представлять в восьмеричном коде, внедрилась эта система счисления. Она сохранилась до настоящего времени и с успехом применяется для записи двоичных чисел, однако зачастую может создавать определенные неудобства.

Упражнение 8.1. Запишите восьмеричное представление в коде ASCII символов "а" и "Ь", используя шестнадцатеричное значение, приведенное ранее. Затем запишите восьмеричное представление 16-разрядного Слова, составленного из двух байт вместе "ab"». Почему они различаются? Определите, каким будет восьмеричное представление 16-разрядного слова, содержащего сочетание "Ьа" в коде ASCII.


Двоично-десятичный код. Другим методом представления чисел является двоичное кодирование каждой десятичной, цифры, записываемой в виде группы из 4 двоичных разрядов. Например, 13710 = 0001 00110111 (двоично-десятичный код). Заметим, что двоично-десятичное представление числа не эквивалентно двоичному, которое в данном случае будет иметь вид: 13710 = 100010012. Можно считать, что разряды двоично-десятичного кода, начиная с правого, выражают числа 1, 2, 4, 8, 10, 20, 40, 80, 100, 200, 400, 800 и т. д. Очевидно, что двоично-десятичное кодирование с точки зрения использования двоичных разрядов не экономично, поскольку каждая группа из 4 бит способна представлять числа от 0 до 15, но используется для записи числа, не превышающего 9 (за исключением редкого случая записи цифровой информации с четным паритетом на 7-дорожечную магнитную ленту). Двоично-десятичное кодирование очень удобно в тех случаях, когда требуется воспроизвести число в десятичной форме, так как в этом случае каждый двоично-десятичный символ нужно лишь преобразовать в соответствующее десятичное число, а затем вывести его на индикацию. (Для выполнения этой функции существуют специальные ИМС; в одном небольшом корпусе с простой топологией они содержат дешифратор двоично-десятичного кода, формирователи сигналов, буферный регистр и индикатор. На вход такой схемы нужно лишь подать логические уровни двоично-десятичного символа, после этого на ней высвечивается соответствующая цифра). По этой причине двоично-десятичное кодирование используется обычно при вводе и выводе цифровой информации. К сожалению, преобразование между двоично-десятичным и чисто двоичным кодом сложно, так как каждая десятичная цифра зависит от состояния почти всех двоичных разрядов и наоборот. Тем не менее двоичная арифметика настолько эффективна, что в большинстве ЭВМ вся входная информация преобразуется в двоичную форму, а обратное преобразование производится лишь при ее выводе. Представьте себе, сколько усилий было бы сэкономлено, если бы Homo sapiens имел 8 или 16 пальцев!

Упражнение 8.2. Преобразуйте в десятичный код следующие числа: а) 1110101,01102, б) 11,010101012, в) 2АН. Преобразуйте в двоичный код следующие числа: а) 102310, б) 102316. Преобразуйте в шестнадцатеричный код следующие числа: а) 102310, б) 1011101011012, в) 6145310.


Числа со знаком. Прямой (знаковеличинный) код. Рано или поздно возникнет необходимость представлять отрицательные числа в двоичном коде; в первую очередь это потребуется в устройствах, которые выполняют вычислительные операции. Самое простое — отвести один разряд (скажем, старший) под знак числа, а остальные использовать для представления его величины. Этот способ называется знаковеличинным или прямым кодом и соответствует обычной записи числа со знаком (табл. 8.1).



Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже