Автор: Пользователь скрыл имя, 23 Апреля 2012 в 11:19, доклад
Числа, которыми мы привыкли пользоваться называются десятичными и арифметика, которой мы пользуемся, также называется десятичной. Это потому, что каждое число можно составить из набора цифр содержащего 10 символов - цифр - "0123456789".
Двоичная арифметика
Числа, которыми мы привыкли пользоваться называются десятичными и арифметика, которой мы пользуемся, также называется десятичной. Это потому, что каждое число можно составить из набора цифр содержащего 10 символов - цифр - "0123456789".
Так шло развитие математики, что именно этот набор стал главным, но десятичная арифметика не единственная. Если мы возьмём только пять цифр, то на их основе можно построить пятеричную арифметику, из семи цифр - семеричную. В областях знаний связанных с компьютерной техникой часто используют арифметику, в которой числа составляются из шестнадцати цифр, соответственно эта арифметика называется шестнадцатеричной.
Цифры, применяемые в широко используемых различных системах счисления:
0,1 - цифры двоичной системы
0,1,2,3,4,5,6,7 - цифры восьмеричной системы
0,1,2,3,4,5,6,7,8,9 - цифры десятичной системы
0,1,2,3,4,5,6,7,8,9,A,B,B,C,D,
Чтобы понять, что такое число в не десятичной арифметике сначала выясним, что такое число в десятичной арифметике.
Возьмём, к примеру, число 246. Эта запись означает, что в числе две сотни, четыре десятка и шесть единиц. Следовательно, можно записать следующее равенство:
246 = 200 + 40 + 6 = 2∙102 + 4∙101 + 6∙100
Здесь знаками равенства отделены три способа записи одного и того же числа. Наиболее интересна нам сейчас третья форма записи: 2∙102 + 4∙101 + 6∙100 . Она устроена следующим образом:
В нашем числе три цифры. Старшая цифра "2" имеет номер 3. Так вот она умножается на 10 во второй степени. Следующая цифра "4" имеет порядковый номер 2 и умножается на 10 в первой. Уже видно, что цифры умножаются на десять в степени на единицу меньше порядкового номера цифры. Уяснив сказанное, мы можем записать общую формулу представления десятичного числа. Пусть дано число, в котором N цифр. Будем обозначать i- ю цифру через ai. Тогда число можно записать в следующем виде: anan-1….a2a1. Это первая форма, а третья форма записи будет выглядеть так:
anan-1….a2a1 = an ∙10n-1 + an-1 ∙10n-2 + …. + a2 ∙101 + a1 ∙100
где ai это символ из набора "0123456789"
В этой записи очень хорошо видна роль десятки. Десятка является основой образования числа. И к стати она так и называется "основание системы счисления", а сама система счисления, поэтому так и называется "десятичной". Конечно, никакими особыми свойствами число десять не обладает. Мы вполне можем заменить десять на любое другое число. Например, число в пятеричной системе счисления можно записать так:
anan-1….a2a1 = an ∙5n-1 + an-1 ∙5n-2 + …. + a2 ∙51 + a1∙ 50
где ai это символ из набора "01234"
В общем, заменяем 10 на любое другое число и получаем совершенно другую систему счисления и другую арифметику. Наиболее простая арифметика получается, если 10 заменить на 2. Полученная система счисления называется двоичной и число в ней определяется следующим образом:
anan-1….a2a1 = an ∙2n-1 + an-1 ∙2n-2 + …. + a2 ∙21 + a1∙ 20
где ai это символ из набора "01"
Эта система самая простая из всех возможных, так как в ней любое число образуется только из двух цифр 0 и 1. Понятно, что проще уже некуда. Примеры двоичных чисел : 10, 111, 101.
Показатель системы счисления принято записывать справа снизу около числа. Пример:1102 - двоичная.
∙ Можно ли двоичное число представить в виде десятичного числа и наоборот, можно ли десятичное число представить в виде двоичного?
Двоичное в десятичное.
Это очень просто. Метод такого перевода даёт наш способ записи чисел. Возьмём, к примеру, следующее двоичное число 1011. Разложим его по степеням двойки. Получим следующее:
1011 = 1∙23 + 0∙22 + 1∙21 + 1∙20
Выполним все записанные действия и получим:
1∙23 + 0∙22 + 1∙21 + 1∙20 = 8 + 0+ 2 + 1 = 11. Таким образом, получаем, что 1011(двоичное) = 11 (десятичное). Сразу видно и небольшое неудобство двоичной системы. То же самое число, которое, в десятичной системе записано одним знаком в двоичной системе, для своей записи требует четыре знака. Но это плата за простоту.
Десятичное в двоичное.
К примеру, переведём число 345 из десятичной в двоичную систему счисления. Для этого воспользуемся следующим алгоритмом: будем делить число 345 на 2, а остаток от каждого деления записывать отдельно. Повторяя эту процедуру до тех пор, пока частное не станет равным 0.
частное остаток
34510 = 1010110012
Сложение двоичных чисел.
0 + 0 = 0
1 + 0 = 1
0 + 1 = 1
1 + 1 = 10
Способ сложения столбиком в общем-то такой же как и для десятичного числа. То есть, сложение выполняется поразрядно, начиная с младшей цифры.
Выполним пример: 10011 + 10001.
+10011
10001
100100
Первый разряд: 1+1 = 2. Записываем 0 и 1 на ум пошло.
Второй разряд: 1+0+1(запомненная единица) =2. Записываем 0 и 1 на ум пошло.
Третий разряд: 0+0+1(запомненная единица) = 1. Записываем 1.
Четвертый разряд 0+0=0. Записываем 0.
Пятый разряд 1+1=2. Записываем 0 и добавляем шестым разрядом 1.
Переведём все три числа в десятичную систему и проверим правильность сложения.
10011 = 1∙24 + 0∙23 + 0∙22 + 1∙21 + 1∙20 = 16 + 2 + 1 =19
10001 = 1∙24 + 0∙23 + 0∙22 + 0∙21 + 1∙20 = 16 + 1 = 17
100100 = 1∙25 + 0∙24 + 0∙23 + 1∙22 + 0∙21 + 0∙20 =32+4=36
17 + 19 = 36 верное равенство
0 – 0 = 0
1 – 0 = 1
0 – 1 = -1
1 – 1 = 0
При вычитании в столбик мы можем "занимать" единицу у следующего разряда, точно так же, как мы делаем это для десятичной системы. Эта занимаемая 1 равна двум 1 данного разряда.
_10011
00010
Переведём все три числа в десятичную систему и проверим правильность вычитания.
10011 = 1∙24 + 0∙23 + 0∙22 + 1∙21 + 1∙20 = 16 + 2 + 1 =19
10001 = 1∙24 + 0∙23 + 0∙22 + 0∙21 + 1∙20 = 16 + 1 = 17
00010 = 0∙24 + 0∙23 + 0∙22 + 1∙21 + 0∙20 = 2
Умножение двоичных чисел
0 ∙ 0 = 0
1 ∙ 0 = 0
0 ∙ 1 = 0
1 ∙ 1 = 1
Это действие над двоичными числами можно выполнить в столбик, как мы делаем это для десятичных чисел:
10011
00000
10011
100110
Переведём все три числа в десятичную систему и проверим правильность умножения.
10011 = 1∙24 + 0∙23 + 0∙22 + 1∙21 + 1∙20 = 16 + 2 + 1 =19
10=1∙21+0∙20= 2
100110 = 1∙25 + 0∙24 + 0∙23 + 1∙22 + 1∙21 + 0∙20 = 32 + 4 + 2 = 38
19∙2=38 Верно.
Деление двоичных чисел
Деление двоичных чисел производится по тем же правилам, что и для десятичных. При этом используются таблицы двоичного умножения и вычитания.для лучшего понимания алгоритм деления разберём более подробно. Пусть нам необходимо разделить два десятичных числа, например 234 разделить на 7. Как мы это делаем в десятичной системе счисления.
234|7__
Мы выделяем справа (от старшего разряда) такое количество цифр, чтобы получившееся число было как можно меньше и в то же время больше делителя. 2 - меньше делителя, следовательно, необходимое нам число 23. Затем делим полученное число на делитель с остатком. Получаем следующий результат:
_ 234|7__
24
Описанную операцию повторяем до тех пор, пока полученный остаток не окажется меньше делителя. Когда это случится, число полученное под чертой, это частное, а последний остаток - это остаток операции.
_ 234|7__
21 |33
_ 24
21
3
Так вот операция деления двоичного числа выполняется точно также. Попробуем
11101010 | 111
|
Ищем число, от старшего разряда которое первое было бы больше чем делитель или равно ему. Это трёхразрядное число 111. Теперь необходимо подобрать делитель выделенному числу. И здесь мы опять выигрываем в сравнении в десятичной системой. Дело в том, что подбираемый делитель это обязательно цифра, а цифры у нас только две. Так как 111 равно 111, то с делителем всё понятно это 1. Выполним шаг операции.
11101010 | 111
111 | 1
0000
Итак, остаток от выполненной операции 000. Это меньше чем 111, поэтому чтобы выполнить второй шаг деления, необходимо добавить(снести) к 000 следующую цифру, это цифра 0. Так как всё равно получился 0, то и в частное записываем 0. И сносим вниз следующую цифру.
11101010 | 111
111 | 10
00001
00001 меньше 111 поэтому мы опять допишем в частное цифру 0
11101010 | 111
111 | 100
00001
00001 меньше числа 111, поэтому сносим вниз следующую цифру.
11101010 | 111
111 | 100
000010
Опять получилось меньше. Дописываем в частное ещё один 0. И сносим следующую цифру.
11101010 | 111
111 | 1000
0000101
Число 0000101 меньше чем 111, поэтому в частное дописываем ещё один 0. И сносим следующую цифру.
11101010 | 111
111 | 10000
_00001010
111
Число 00001010 больше чем 111, поэтому дописываем в частное цифру 1 и выполняем действие вычитания. При этом не забываем, что одна занятая единица из старшего разряда, равна двум единицам младшего разряда( того разряда, куда мы занимаем.
11101010 | 111
111 | 100001
_00001010
111
0011
В остатке получилось число 11, которое явно меньше числа 111. А так как сносить больше нечего, то вычисление закончено.
Проверяем полученный результат.
11101010 = 1∙27 + 1∙26 + 1∙25 + 0∙24 + 1∙23 + 0∙22+ 1∙21 + 0∙20 = 128 + 64 + 32 + 0 +8 + 0 + 2 + 0 = 234
111 = 1∙22 + 1∙21 + 1∙20 = 4 + 2 + 1 = 7
100001 = 1∙25 + 0∙24 + 0∙23 + 0∙22+ 0∙21 + 1∙20 = 32 + 0 + 0 + 0 + 0 + 1 = 33
Верно.
6