Система счисления основание цифры таблица. Перевод чисел в различные системы счисления с решением

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ЭКОНОМИКИ И УПРАВЛЕНИЯ

Кафедра Экономической Информатики

Системы счисления

Лабораторный практикум

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

Новосибирск 2007

Введение

Лабораторный практикум по теме «Системы счисления» предназначен для проведения практических занятий с целью получения основных понятий о том, как происходят вычислительные операции в ЭВМ.

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

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

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

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

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

Индивидуальные задания оформляются средствами текстового процессора Word и содержат титульный лист, текст задания и решение.

Система счисления –это знаковая система, в которой числа записываются по определенным правилам, с помощью символов некоторого алфавита.

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

Системы счисления разделяются на две большие группы:

    позиционные

    непозиционные

  1. Непозиционные системы счисления

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

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

I = 1 V = 5 X = 10 L = 50 C = 100 D = 500 M = 1000

Значение цифры не зависит от ее положения в числе. Например, в числе XXX цифра X встречается трижды, и в каждом случае обозначает 10. Само число XXX означает 30.

Величина числа в римской системе счисления определяется как сумма или разность чисел.

Если меньшая цифра стоит слева от большей, то она вычитается, если справа – прибавляется.

Например, 1998 = 1000 + (1000 – 100) + (100 – 10) + 5 + 1 + 1 + 1 = M CM XC V I I I

Подряд одна и та же цифра ставится не более 3-х раз. Например, если число 80 = LXXX, то 90 записывается как XC, а не LXXXX.

  1. Позиционные системы счисления

Позиционные системы счисления используются для счета.

В позиционных системах счисления величина числа зависит от позиции цифры в числе. Например, в десятичной системе счисления числа 58 и 85 не равны, хотя содержат одни и те же цифры.

Любая позиционная система счисления характеризуется своим основанием .

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

В принципе основанием системы счисления может быть любое натуральное число – два, три, четыре. Следовательно, возможно бесчисленное множество позиционных систем счисления: двоичная, троичная, четверичная и т.д.

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

Введем обозначения:

q – основание системы счисления;

a i – любая цифра из множества цифр, принятых в данной системе счисления;

i – индекс, который обозначает номер разряда, занимаемого цифрой в числе,

где a i удовлетворяет неравенству

и принимает в этом диапазоне только целые значения.

Позицию для целых чисел обозначим номерами 1,2,…, n, а позиции в правильных дробях – номерами -1, -2,…, -m.

Тогда любое число А в произвольной позиционной системе счисления с основанием q можно записать следующим образом:

A n = a n-1 q n-1 + a n-2 q n-2 + … + a 1 q 1 + a 0 q 0 + a -1 q -1 + … + a – m q -m , (1)

где q i называется позиционным значением или весом i – го разряда.

Для десятичной системы счисления понятие веса разряда соответствует названиям позиций – единицы, десятки, сотни, десятые доли, сотые доли и т.д.

Для десятичной системы счисления

Разряды 3 2 1 0

Число 2 1 2 4 10 = 2 х 10 3 + 1 х 10 2 + 2 х 10 1 + 4 х 10 0

Для двоичной системы счисления

Разряды 3 2 1 0 -1

Число 1 0 0 1, 1 2 = 1 х 2 3 + 0 х 2 2 + 0 х 2 1 + 1 х 2 0 + 1 х 2 -1

Для восьмеричной системы счисления

Разряды 3 2 1 0 -1 -2

Число 3 0 5 2, 4 1 8 = 3 х 8 3 + 0 х 8 2 + 5 х 8 1 + 2 х 8 0 + 4 х 8 -1 +1 х 8 -2

История

Изобретение позиционной нумерации, основанной на поместном значении цифр, приписывается шумерам и вавилонянам . В более поздний период такая нумерация была развита индусами и имела неоценимые последствия в истории цивилизации . К числу таких систем относится десятичная система счисления , возникновение которой связано со счётом на пальцах. В средневековой Европе она появилась через итальянских купцов, в свою очередь заимствовавших её у арабов.

Определения

Позиционная система счисления определяется целым числом b > 1 {\displaystyle b>1} , называемым основанием системы счисления. Система счисления с основанием b {\displaystyle b} также называется b {\displaystyle b} -ичной (в частности, двоичной , троичной , десятичной и т.п.).

x = ∑ k = 0 n − 1 a k b k {\displaystyle x=\sum _{k=0}^{n-1}a_{k}b^{k}} , где a k {\displaystyle \ a_{k}} - это целые числа, называемые цифрами , удовлетворяющие неравенству 0 ≤ a k ≤ b − 1. {\displaystyle 0\leq a_{k}\leq b-1.} x = a n − 1 a n − 2 … a 0 . {\displaystyle x=a_{n-1}a_{n-2}\dots a_{0}.}

В ненулевых числах x {\displaystyle \ x} начальные нули обычно опускаются.

Для записи чисел в системах счисления с основанием до 36 включительно в качестве цифр (знаков) используются арабские цифры (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) и, затем, буквы латинского алфавита (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z). При этом, a = 10, b = 11 и т.д., иногда x = 10.

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

123 10 {\displaystyle 123_{10}} - это число 123 в десятичной системе счисления ; 173 8 {\displaystyle 173_{8}} - то же число в восьмеричной системе счисления ; 1111011 2 {\displaystyle 1111011_{2}} - то же число, но в двоичной системе счисления ; 0001 0010 0011 10 = 000100100011 B C D {\displaystyle 0001\ 0010\ 0011_{10}=000100100011_{BCD}} - то же число, но в десятичной системе счисления с двоичным кодированием десятичных цифр (BCD); 11120 3 N {\displaystyle 11120_{3N}} - то же число, но в несимметричной троичной системе счисления ; 1 i i i i 0 3 S = 177770 3 S = 122220 3 S = + − − − − 0 3 S {\displaystyle 1iiii0_{3S}=177770_{3S}=122220_{3S}=+----0_{3S}} - то же число, но в симметричной троичной системе счисления , знаки «i», «7», «2» и «−» обозначают «−1», знаки «1» и «+» обозначают «+1».

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

  • в ассемблере и записях общего рода, не привязанных к конкретному языку, буквой h (от h exadecimal) в конце числа (синтаксис Intel);
  • в Паскале знаком «$» в начале числа;
  • в Си и многих других языках комбинацией 0x или 0X (от hex adecimal) в начале.

В некоторых диалектах языка Си по аналогии с «0x» используется префикс «0b» для обозначения двоичных чисел (обозначение «0b» не входит в стандарт ANSI C).

((… (a n − 1 ⋅ b + a n − 2) ⋅ b + a n − 3) …) ⋅ b + a 0 . {\displaystyle ((\ldots (a_{n-1}\cdot b+a_{n-2})\cdot b+a_{n-3})\ldots)\cdot b+a_{0}.}

Например:

101100 2 = = 1 · 2 5 + 0 · 2 4 + 1 · 2 3 + 1 · 2 2 + 0 · 2 1 + 0 · 2 0 = = 1 · 32 + 0 · 16 + 1 · 8 + 1 · 4 + 0 · 2 + 0 · 1 = = 32 + 8 + 4 + 0 = 44 10

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

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

44 10 {\displaystyle 44_{10}} переведём в двоичную систему:

44 делим на 2. частное 22, остаток 0 22 делим на 2. частное 11, остаток 0 11 делим на 2. частное 5, остаток 1 5 делим на 2. частное 2, остаток 1 2 делим на 2. частное 1, остаток 0 1 делим на 2. частное 0, остаток 1

Частное равно нулю, деление закончено. Теперь записав все остатки снизу вверх получим число 101100 2 {\displaystyle 101100_{2}}

Перевод из двоичной в восьмеричную и шестнадцатеричную системы

Для этого типа операций существует упрощённый алгоритм.

Для восьмеричной - разбиваем переводимое число на количество цифр, равное степени 2 (2 возводится в ту степень, которая требуется, чтобы получить основание системы, в которую требуется перевести (2³=8), в данном случае 3, то есть триад). Преобразуем триады по таблице триад:

000 0 100 4 001 1 101 5 010 2 110 6 011 3 111 7

Для шестнадцатеричной - разбиваем переводимое число на количество цифр, равное степени 2 (2 возводится в ту степень, которая требуется, чтобы получить основание системы, в которую требуется перевести (2 4 =16), в данном случае 4, то есть тетрад). Преобразуем тетрады по таблице тетрад:

0000 0 0100 4 1000 8 1100 C 0001 1 0101 5 1001 9 1101 D 0010 2 0110 6 1010 A 1110 E 0011 3 0111 7 1011 B 1111 F

Преобразуем 101100 2 восьмеричная - 101 100 → 54 8 шестнадцатеричная - 0010 1100 → 2C 16

Перевод из восьмеричной и шестнадцатеричной систем в двоичную

Для этого типа операций существует упрощённый алгоритм-перевёртыш.

Для восьмеричной - преобразуем по таблице в триплеты

0 000 4 100 1 001 5 101 2 010 6 110 3 011 7 111

Для шестнадцатеричной - преобразуем по таблице в квартеты

0 0000 4 0100 8 1000 C 1100 1 0001 5 0101 9 1001 D 1101 2 0010 6 0110 A 1010 E 1110 3 0011 7 0111 B 1011 F 1111

Преобразуем 54 8 → 101 100 2C 16 → 0010 1100

Перевод из двоичной системы в 8- и 16-ричную

Перевод дробной части из двоичной системы счисления в системы счисления с основаниями 8 и 16 осуществляется точно также, как и для целых частей числа, за тем лишь исключением, что разбивка на октавы и тетрады идёт вправо от десятичной запятой, недостающие разряды дополняются нулями справа. Например, рассмотренное выше число 1100,011 2 будет выглядеть как 14,3 8 или C,6 16 .

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

Рассмотрим пример перевода двоичного числа 1100,011 2 в десятичное. Целая часть этого числа равна 12 (см. выше), а вот перевод дробной части рассмотрим подробнее:

0 , 011 = 0 ⋅ 2 − 1 + 1 ⋅ 2 − 2 + 1 ⋅ 2 − 3 = 0 + 0 , 25 + 0 , 125 = 0 , 375. {\displaystyle 0,011=0\cdot 2^{-1}+1\cdot 2^{-2}+1\cdot 2^{-3}=0+0,25+0,125=0,375.}

Итак, число 1100,011 2 = 12,375 10 .

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

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

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

Для перевода дробной части числа в другие системы счисления нужно обратить целую часть в ноль и начать умножение получившегося числа на основание той системы, в которую нужно перевести. Если в результате умножения будут снова появляться целые части, их нужно повторно обращать в нуль, предварительно запомнив (записав) значение получившейся целой части. Операция заканчивается, когда дробная часть полностью обратится в нуль. Ниже приводится пример перевода числа 103,625 10 в двоичную систему счисления.

Переводим целую часть по правилам, описанным выше, получаем 103 10 = 1100111 2 .

0,625 умножаем на 2. Дробная часть 0,250. Целая часть 1. 0,250 умножаем на 2. Дробная часть 0,500. Целая часть 0. 0,500 умножаем на 2. Дробная часть 0,000. Целая часть 1.

Итак, сверху вниз получаем число 101 2 . Поэтому 103,625 10 = 1100111,101 2

Точно также осуществляется перевод в системы счисления с любым основанием.

Сразу нужно отметить, что этот пример специально подобран, в общем случае очень редко удаётся завершить перевод дробной части числа из десятичной системы в другие системы счисления, а потому, в подавляющем большинстве случаев, перевод можно осуществить с какой либо долей погрешности. Чем больше знаков после запятой - тем точнее приближение результата перевода к истине. В этих словах легко убедиться, если попытаться, например, перевести в двоичный код число 0,626.

Вариации и обобщения

Запись рациональных чисел

Симметричные системы счисления

Симметричные (уравновешенные, знакоразрядные) системы счисления отличаются тем, что используют цифры не из множества { 0 , 1 , … , b − 1 } {\displaystyle \{0,1,\ldots ,b-1\}} , а из множества { 0 − (b − 1 2) , 1 − (b − 1 2) , … , (b − 1) − (b − 1 2) } {\displaystyle \left\{0-\left({\tfrac {b-1}{2}}\right),1-\left({\tfrac {b-1}{2}}\right),\ldots ,(b-1)-\left({\tfrac {b-1}{2}}\right)\right\}} . Чтобы цифры были целыми, нужно, чтобы b {\displaystyle b} было нечётным. В симметричных системах счисления не требуется дополнительных обозначений для знака числа. Кроме того, вычисления в симметричных системах удобны тем, что не требуется особых правил округления - оно сводится к простому отбрасыванию лишних разрядов, что резко уменьшает систематические ошибки вычислений.

Чаще всего используется симметричная троичная система счисления с цифрами { − 1 , 0 , 1 } {\displaystyle \{-1,0,1\}} . Она применяется в троичной логике и была технически реализована в вычислительной машине «Сетунь ».

Отрицательные основания

Существуют позиционные системы с отрицательными основаниями, называемые нега-позиционными :

  • -2 - нега-двоичная система счисления
  • -3 - нега-троичная система счисления
  • -10 - нега-десятичная система счисления

Нецелочисленные основания

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

Примерами таких систем счисления являются:

Комплексные основания

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

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

Примеры

Далее будем записывать позиционную систему счисления в следующем виде ⟨ ρ , A ⟩ {\displaystyle \langle \rho ,A\rangle } , где ρ {\displaystyle \rho } - основание системы счисления, а A - множество цифр. В частности, множество A может иметь вид:

Примерами систем счисления с комплексными основаниями являются (далее j - мнимая единица):

  • ⟨ ρ = j R , B R ⟩ . {\displaystyle \langle \rho =j{\sqrt {R}},B_{R}\rangle .}
  • ⟨ ρ = 2 e ± j π / 2 , B 2 ⟩ . {\displaystyle \langle \rho ={\sqrt {2}}e^{\pm j\pi /2},B_{2}\rangle .}
  • ⟨ ρ = 2 e j π / 3 , { 0 , 1 , e 2 j π / 3 , e − 2 j π / 3 } ⟩ ; {\displaystyle \langle \rho =2e^{j\pi /3},\{0,1,e^{2j\pi /3},e^{-2j\pi /3}\}\rangle ;}
  • ⟨ ρ = R , B R ⟩ , {\displaystyle \langle \rho ={\sqrt {R}},B_{R}\rangle ,} где φ = ± arccos ⁡ (− β / 2 R) {\displaystyle \varphi =\pm \arccos {(-\beta /2{\sqrt {R}})}} , β < min { R , 2 R } {\displaystyle \beta <\min\{R,2{\sqrt {R}}\}} - целое положительное число, которое может принимать несколько значений при данном R ;
  • ⟨ ρ = − R , A R 2 ⟩ , {\displaystyle \langle \rho =-R,A_{R}^{2}\rangle ,} где множество A R 2 {\displaystyle A_{R}^{2}} состоит из комплексных чисел вида r m = α m 1 + j α m 2 {\displaystyle r_{m}=\alpha _{m}^{1}+j\alpha _{m}^{2}} , а числа α m ∈ B R . {\displaystyle \alpha _{m}\in B_{R}.} Например: ⟨ − 2 , { 0 , 1 , j , 1 + j } ⟩ ; {\displaystyle \langle -2,\{0,1,j,1+j\}\rangle ;}

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

Что это значит?

Начнем с определения основного понятия. Как отмечает учебник "Информатика", система счисления - записи чисел, в которой используется специальный алфавит или определенный набор цифр.

В зависимости от того, меняется ли значение цифры от ее положения в числе, выделяют две: позиционную и непозиционную системы счисления.

В позиционных системах значение цифры меняется вместе с ее положением в числе. Так, если взять число 234, то цифра 4 в ней означает единицы, если же рассмотреть число 243, то тут она будет уже означать десятки, а не единицы.

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

Непозиционные системы

К непозиционным системам счисления относятся:

  1. Единичная система, которая считается одной из первых. В ней вместо цифр использовались палочки. Чем их было больше, тем больше было значение числа. Встретить пример чисел, записанных таким образом, можно в фильмах, где речь идет о потерянных в море людях, заключенных, которые отмечают каждый день с помощью зарубок на камне или дереве.
  2. Римская, в которой вместо цифр использовались латинские буквы. Используя их, можно записать любое число. При этом его значение определялось с помощью суммы и разницы цифр, из которых состояло число. Если слева от цифры находилось меньшее число, то левая цифра вычиталась из правой, а если справа цифра была меньше или равна цифре слева, то их значения суммировались. Например, число 11 записывалось как XI, а 9 - IX.
  3. Буквенные, в которых числа обозначались с помощью алфавита того или иного языка. Одной из них считается славянская система, в которой ряд букв имел не только фонетическое, но и числовое значение.
  4. в которой использовалось всего два обозначения для записи - клинья и стрелочки.
  5. В Египте тоже использовались специальные символы для обозначения чисел. При записи числа каждый символ мог использоваться не более девяти раз.

Позиционные системы

Большое внимание уделяется в информатике позиционным системам счисления. К ним относятся следующие:

  • двоичная;
  • восьмеричная;
  • десятичная;
  • шестнадцатеричная;
  • шестидесятеричная, используемая при счете времени (к примеру, в минуте - 60 секунд, в часе - 60 минут).

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

Десятичная система

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

Двоичная система

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

Для записи чисел используется лишь две цифры - 0 и 1. При этом, в зависимости от положения 0 или 1 в числе, его значение будет меняться.

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

Восьмеричная система

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

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

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

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

Шестнадцатеричная система

В последнее время все большую популярность приобретает в программировании и информатике система счисления шестнадцатеричная. В ней используются не только цифры от 0 до 9, но и ряд латинских букв - A, B, C, D, E, F.

При этом, каждая из букв имеет свое значение, так A=10, B=11, C=12 и так далее. Каждое число представляется в виде набора из четырех знаков: 001F.

Перевод чисел: из десятичной в двоичную

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

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

Например, переведем число 9 в двоичную систему:

Делим 9, так как число не делится нацело, то берем число 8, остаток будет 9 - 1 = 1.

После деления 8 на 2 получаем 4. Снова делим его, так как число делится нацело - получаем в остатке 4 - 4 = 0.

Проводим ту же операцию с 2. В остатке получаем 0.

В итоге деления у нас получается 1.

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

Перевод чисел: из двоичной в десятичную

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

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

Для школьников этот алгоритм можно объяснить проще:

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

Для примера разберем с вами полученное ранее число 1001, переведя его в десятичную систему, и заодно проверим правильность наших вычислений.

Выглядеть это будет следующим образом:

1*2 3 + 0*2 2 +0*2 1 +1*2 0 = 8+0+0+1 =9.

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

Другие варианты перевода

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

Арифметические операции

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

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

Заучивать их необязательно - достаточно просто распечатать и иметь под рукой. Также можно воспользоваться калькулятором на ПК.

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

Основные понятия

Система счисления - это совокупность правил записи чисел посредством конечного набора символов (цифр).

Системы счисления бывают:

  • непозиционными (в этих системах значение цифры не зависит от ее позиции - положения в записи числа);
  • позиционными (значение цифры зависит от позиции).

Непозиционные системы счисления

Примеры: унарная, римская, древнерусская и др.

Позиционные системы счисления

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

p i = s i ,

Разряды числа нумеруются справа налево, причем младший разряд целой части (стоящий перед разделителем - запятой или точкой) имеет номер ноль. Разряды дробной части имеют отрицательные номера:

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

По определению веса разряда

p i = s i ,
где i - номер разряда, а s - основание системы счисления.

Тогда, обозначив цифры числа как a i , любое число, записанное в позиционной системе счисления, можем представить в виде:

x = a n s n + a n-1 s n-1 + ... + a 2 s 2 + a 1 s 1 + a 0 s 0 + a -1 s -1 + ...

Например, для системы счисления с основанием 4:

1302.2 4 = 1⋅4 3 + 3⋅4 2 + 0⋅4 1 + 2⋅4 0 + 2⋅4 -1

Выполнив вычисления, мы получим значение исходного числа, записанное в десятичной системе счисления (точнее, в той, в которой производим вычисления). В данном случае:

1302.2 4 = 1⋅4 3 + 3⋅4 2 + 0⋅4 1 + 2⋅4 0 + 2⋅4 -1 =
= 1⋅64 + 3⋅16 + 0⋅4 + 2⋅1 + 2⋅0,25 =
= 64 + 48 + 2 + 0,5 = 114,5

Таким образом, для перевода числа из любой системы счисления в десятичную следует:

  1. пронумеровать разряды исходного числа;
  2. записать сумму, слагаемые которой получаются как произведения очередной цифры на основание системы счисления, возведенное в степень, равную номеру разряда;
  3. выполнить вычисления и записать полученный результат (указав основание новой системы счисления - 10).

Примеры:

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

Вспомним пример перевода из системы счисления с основанием 4 в десятичную:

1302 4 = 1⋅4 3 + 3⋅4 2 + 0⋅4 1 + 2⋅4 0 = 114

Иначе это можно записать так:

114 = ((1 ⋅ 4 + 3) ⋅ 4 + 0) ⋅ 4 + 2 = 1302 4

Отсюда видно, что при делении 114 на 4 нацело в остатке должно остаться 2 - это младшая цифра при записи в четверичной системе. Частное же будет равно

(1 ⋅ 4 + 3) ⋅ 4 + 0

Деление его на 4 даст остаток - следующую цифру (0) и частное 1 ⋅ 4 + 3. Продолжая действия, получим аналогичным образом и оставшиеся цифры.

В общем случае для перевода целой части числа из десятичной системы счисления в систему с каким-либо другим основанием необходимо:

  1. Выполнить последовательное деление с остатком исходного числа и каждого полученного частного на основание новой системы счисления.
  2. Записать вычисленные остатки, начиная с последнего (т.е. в обратном порядке)

Примеры:

Системы счисления с кратными основаниями

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

Достаточно заменить каждый разряд шестнадцатеричной записи четырьмя (16=24 ) разрядами двоичной (и наоборот) по таблице.

шестнадцатеричная -> двоичная
A 3 2 E
1010 0011 0010 1110
двоичная -> шестнадцатеричная
(00)10 1010 0111 1101
2 A 7 D

Аналогично происходит и перевод между двоичной и восьмеричной системой, только разряд восьмеричной соответствует трем разрядам двоичной (8=2 3)

восьмеричная -> двоичная
5 3 2 1
101 011 010 001
двоичная -> восьмеричная
(0)10 101 001 111 101
2 5 1 7 5

Арифметика

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

Сложение

Двоичная система:

(перенос)
1 0 0 1 1 0 1 1
1 0 0 1 1 1 0

1 1 1 0 1 0 0 1
7 6 5 4 3 2 1 0 (номера разрядов)

В нулевом разряде: 1 + 0 = 0

В первом разряде: 1 + 1 = 2. 2 переносится в старший (2-й) разряд, обращаясь в единицу переноса. В первом разряде остается 2 - 2 = 0.

Во втором разряде: 0 + 1 + 1 (перенос) = 2; Переносим в старший разряд,

Продолжая вычисления, получим:

10011011 2 + 1001110 2 = 11101001 2

Восьмеричная система:


(перенос)
3 4 2 6 1

4 4 3 5

4 0 7 1 6
4 3 2 1 0 (номера разрядов)

Выполняем вычисления аналогично двоичной системе, но в старший разряд переносим 8. Получаем:

34261 8 + 4435 8 = 40716 8

Шестнадцатеричная система:



(перенос)

A 3 9 1

8 5 3 4

1 2 8 C 5
4 3 2 1 0 (номера разрядов)

A391 16 + 8534 16 = 128C5 16

Вычитание

Двоичная система:



(перенос)
1 0 0 1 1 0 1 1
1 0 0 1 1 1 0


1 0 0 1 1 0 1
7 6 5 4 3 2 1 0 (номера разрядов)

Разберем одну из важнейших тем по информатике - . В школьной программе она раскрывается довольно "скромно", скорее всего, из-за недостатка отведенных на нее часов. Знания по этой теме, особенно на перевод систем счисления , являются обязательным условием для успешной сдачи ЕГЭ и поступления в ВУЗы на соответствующие факультеты. Ниже подробным образом рассмотрены такие понятия, как позиционные и непозиционные системы счисления , даны примеры этих систем счисления, представлены правила перевода целых десятичных чисел, правильных десятичных дробей и смешанных десятичных чисел в любую другую систему счисления, перевода чисел из любой системы счисления в десятичную, перевода из восьмеричной и шестнадцатиричной систем счисления в двоичную систему счисления . На экзаменах в большом количестве встречаются задачи по данной теме. Умение их решать – одно из требований к абитуриентам. Скоро: По каждой теме раздела, помимо подробного теоретического материала, будут представлены практически все возможные варианты задач для самостоятельного изучения. Кроме того, у вас появится возможность совершенно бесплатно скачать с файлообменника уже готовые подробные решения к данным задачам, иллюстрирующие различные способы получения верного ответа.

епозиционные системы счисления.

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

К непозиционным системам счисления относится, например, римская, где вместо цифр - латинские буквы.

I 1 (один)
V 5 (пять)
X 10 (десять)
L 50 (пятьдесят)
C 100 (сто)
D 500 (пятьсот)
M 1000 (тысяча)

Здесь буква V обозначает 5 независимо от ее местоположения. Однако стоит упомянуть о том, что хотя римская система счисления и является классическим примером непозиционной системы счисления, не является полностью непозиционной, т.к. меньшая цифра, стоящая перед большей, вычитается из нее:

IL 49 (50-1=49)
VI 6 (5+1=6)
XXI 21 (10+10+1=21)
MI 1001 (1000+1=1001)

озиционные системы счисления.

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

Например, если говорить о десятичной системе счисления, то в числе 700 цифра 7 означает "семь сотен", но эта же цифра в числе 71 означает "семь десятков", а в числе 7020 - "семь тысяч".

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

    Например:
  • Двоичная - позиционная система счисления с основанием 2.
  • Четверичная - позиционная система счисления с основанием 4.
  • Пятиричная - позиционная система счисления с основанием 5.
  • Восьмеричная - позиционная система счисления с основанием 8.
  • Шестнадцатиричная - позиционная система счисления с основанием 16.

Чтобы успешно решать задачи по теме "Системы счисления", ученик должен знать наизусть соответствие двоичных, десятичных, восьмеричных и шестнадцатиричных чисел до 16 10:

10 с/с 2 с/с 8 с/с 16 с/с
0 0 0 0
1 1 1 1
2 10 2 2
3 11 3 3
4 100 4 4
5 101 5 5
6 110 6 6
7 111 7 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
14 1110 16 E
15 1111 17 F
16 10000 20 10

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

К числу прибавляется единица и получается новое число. Если разряд единиц становится равен основанию системы счисления, мы увеличиваем число десятков на 1 и т.д.

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

Отсюда у находчивых учеников появляются "свои методики" (на удивление... работающие) при заполнении, например, таблиц истинности, первые столбцы (значения переменных) которых, фактически, заполняются двоичными числами в порядке возрастания.

Для примера разберем получение чисел в восьмеричной системе : К первому числу (0) прибавляем 1, получаем 1. Затем к 1 прибавляем 1, получаем 2 и т.д. до 7. Если мы прибавим к 7 единицу, получим число равное основанию системы счисления, т.е. 8. Тогда нужно увеличить на единицу разряд десятков (получаем восьмеричный десяток - 10). Далее, очевидно, идут числа 11, 12, 13, 14, 15, 16, 17, 20, ..., 27, 30, ..., 77, 100, 101...

равила перевода из одной системы счисления в другую.

1 Перевод целых десятичных чисел в любую другую систему счисления.

Число нужно разделить на новое основание системы счисления . Первый остаток от деления - это и есть первая младшая цифра нового числа. Если частное от деления меньше или равно новому основанию, то его (частное) нужно снова разделить на новое основание. Деление нужно продолжать, пока не получим частное меньше нового основания. Это есть старшая цифра нового числа (нужно помнить, что, например, в шестнадцатиричной системе после 9 идут буквы, т.е. если в остатке получили 11, нужно записать его как B).

Пример ("деление уголком"): Переведем число 173 10 в восьмеричную систему счисления.


Таким образом, 173 10 =255 8

2 Перевод правильных десятичных дробей в любую другую систему счисления.

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

Пример: Переведем число 0,65625 10 в восьмеричную систему счисления.

Статьи по теме