![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Ая система счисления. При наладке аппаратных средств ЭВМ или создании новой программы возникает необходимость заглянуть внутрь памяти машины
При наладке аппаратных средств ЭВМ или создании новой программы возникает необходимость " заглянуть внутрь" памяти машины, чтобы оценить ее текущее состояние. Но там все заполнено длинными последовательностями нулей и единиц двоичных чисел. Эти последовательности очень неудобны для восприятия человеком, привыкшим к более короткой записи десятичных чисел. Кроме того, естественные возможности человеческого мышления не позволяют оценить быстро и точно величину числа, представленного, например, комбинацией из 16 нулей и единиц.
Для облегчения восприятия двоичного числа решили разбивать его на группы разрядов, например, по три или четыре разряда. Эта идея оказалась очень удачной, так как последовательность из трех бит имеет 8 комбинаций, а последовательность из 4 бит - 16. Числа 8 и 16 являются степенями двойки, поэтому легко находить соответствие с двоичными числами. Развивая эту идею, пришли к выводу, что группы разрядов можно закодировать, сократив при этом длину последовательности знаков. Для кодировки трех битов требуется восемь цифр, поэтому взяли цифры от 0 до 7 десятичной системы. Для кодировки же четырех битов необходимо шестнадцать знаков; для этого взяли 10 цифр десятичной системы и 6 букв латинского алфавита: A, B, C, D, E, F. Полученные системы, имеющие основания 8 и 16, назвали соответственно восьмеричной и шестнадцатеричной.
В восьмеричной (octal) системе счисления используются восемь различных цифр: 0, 1, 2, 3, 4, 5, 6, 7. Основание системы - 8. При записи отрицательных чисел перед последовательностью цифр ставят знак минус. Сложение, вычитание, умножение и деление чисел, представленных в восьмеричной системе, выполняются весьма просто, подобно тому, как это делают в общеизвестной десятичной системе счисления. Пример выполнения операции сложения в восьмеричной системе счисления: 1 1 Красным цветом показан перенос из младших разрядов в старшие. 4 7 6 Выполнение операции в каждом разряде: + 3 4 1) 6 + 4 = 10 = 1*8 + 2 = 128 5 3 2 2) 1 + 7 + 3 = 1*8 + 3 = 138 3) 1 + 4 = 5 Проверим результат путем перевода чисел в десятичную систему счисления: 4768 = 4*82 + 7*8 + 6 = 318 318 348 = 3*8 + 4 = 28 +28 532 = 5*82 + 3*8 + 2 = 346 346
Пример выполнения операции вычитания в восьмеричной системе счисления: 7 8 Красным цветом показан перенос из старших разрядов в младшие. 5 3 2 Выполнение операции в каждом разряде: - 3 4 1) 8 + 2 – 4 = 6 4 7 6 2) 7 + 2 - 3 = 1 *8 + 3 = 138 3) 1 + 4 = 5 Пример выполнения операции умножения в восьмеричной системе счисления: 5 4 54 4*4 = 16 = 2 *8 + 0 = 208 (записываем 0) * 3 4 * 4 2+ 5*4 = 22 = 2 *8 + 6 = 268 2 6 0 260 + 2 0 4
* 3 1 + 5*3 = 16 = 2 *8 + 0 = 208 Выполним проверку: 548 = 5*8 + 4 = 4410 44 348 = 3*8 + 4 = 2810 * 28 23208 = 2*83 + 3*82 + 2*8 = 123210 352 + 88 = 123210 Пример выполнения операции деления в восьмеричной системе счисления:
- 2 0 4 3 48 2 6 0
Деление в восьмеричной системе близко делению в десятичной системе: нужно подобрать цифры частного. 232 делим на 54, в десятичной системе мы получили бы целое частное 4, но из предидущего примера мы знаем, что в восьмеричной системе 54*4 = 260, это много, попробуем взять цифру поменьше – 3, умножаем 54*3 = 204, эта цифра подходит, и т.д.
В различных языках программирования запись восьмеричных чисел начинается с 0, например, запись 011 означает десятичное число 9.
|