Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Арифметические операции в двоичной и кратных ей системах счисления.






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

Рассмотрим этот алгоритм на примере двух двоичных чисел 10101012 и 1101112:

Дописывание единицы                
Первое слагаемое                
Второе слагаемое                
Сумма                

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

10101012=8510, 1101112=5510, 100011002=14010, 8510+5510=14010.

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

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

10-чная 2-чная 8-чная 16-ичная
       
       
       
       
       
       
       
       
       
       
      А
      В
      С
      D
      E
      F
       

Из Таблицы 1 видно, что в двоичной системе запись чисел второй восьмерки (от 8 до 15) отличается от записи первой восьмерки (от 0 до 7) наличием единицы в четвертом (справа) разряде. На этом основан алгоритм перевода двоичных чисел в восьмеричные «по триадам». Для применения этого алгоритма надо разбить двоичное число на тройки цифр (считая справа) и записать вместо каждой из троек восьмеричную цифру:

101011012 → 10 101 101 → 2558.

2 5 5

Крайняя левая тройка может быть неполной (как в примере), для получения полных троек можно приписать слева недостающие нули.

Убедимся в правильности алгоритма:

101011012 → 1*27+1*25+1*23+2*21+1*20=17310;

2558 → 2*26+5*23+5*20=17310.

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

3258 → 3 2 5 → 11 010 101 → 110101012.

011 010 101

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

101011012 → 1010 1101 → AD16.

А D

Аналогично работает и обратный алгоритм: вместо шестнадцатеричных цифр подставляются четверки двоичных цифр.

Из восьмеричной системы в шестнадцатеричную и обратно проще переводить через двоичную систему:

D516→ D 5 → 1101 0101 → 110101012 → 11 010 101 → 3258.

D 5 3 2 5

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

Задание 3. (Задание А6 демоверсии 2004 г.)

Вычислите значение суммы в десятичной системе счисления:

102+108+1016 =? 10






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.