|
Правила выполнения простейших арифметических действий Арифметические операции для двоичных и шестнадцатеричных чисел выполняются по тем же правилам, что и для десятичных чисел, которые хорошо знакомы читателю. Рассмотрим на примерах выполнение таких арифметических операций, как сложение, вычитание и умножение для целых чисел. Правила сложения Таблица сложения двоичных цифр имеет вид (желтым цветом выделены значения суммы): Пример 1. Сложить двоичные числа 1101 и 11011. Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 5 | 4 | 3 | 2 | 1 | | слагаемые: | | 1 | 1 | 0 | 1 | | 1 | 1 | 0 | 1 | 1 | Процесс образования суммы по разрядам описан ниже: а) разряд 1: 12 + 12 = 102; 0 остается в разряде 1, 1 переносится в разряд 2; б) разряд 2: 02 + 12 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 2, 1 переносится в разряд 3; в) разряд 3: 12 + 02 + 12 = 102, где вторая 12 – единица переноса; 0 остается в разряде 3, 1 переносится в разряд 4; г) разряд 4: 12 + 12 + 12 = 112, где третья 12 – единица переноса; 1 остается в разряде 4, 1 переносится в разряд 5; д) разряд 5: 12 + 12 = 102; где вторая 12 – единица переноса; 0 остается в разряде 5, 1 переносится в разряд 6. Таким образом: 1 1 0 12 +1 1 0 1 12 = 10 1 0 0 02. Проверим результат. Для этого определим полные значения слагаемых и суммы (см. Перевод целых чисел): 11012 = 1*23 +1*22 + 0*21 + 1*20 = 8 + 4 + 1 = 13; 110112 = 1*24 + 1*23 + 0*22 + 1*21 + 1*20 = 16 + 8 + 2 + 1 = 27; 1010002 = 1*25 + 0*24 + 1*23 + 0*22 + 0*21 + 0*20 = 32 + 8 = 40. Поскольку 13 + 27 = 40, двоичное сложение выполнено верно. Таблица сложения некоторых шестнадцатеричных чисел имеет вид (обозначения строк и столбцов соответствуют слагаемым): | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | А | В | С | D | E | F | 10 | | 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | | 2 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | | 3 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | | 4 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | | 5 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | | 6 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | | 7 | 7 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | | 8 | 8 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | | 9 | 9 | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | | A | A | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | | B | B | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | | C | C | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | | D | D | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | | E | E | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | | F | F | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | | 10 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 1A | 1B | 1C | 1D | 1E | 1F | 20 | Пример 2. Сложить шестнадцатеричные числа 1С и 7В. Запишем слагаемые в столбик и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 2 | 1 | | слагаемые: | 1 | С | | 7 | В | Процесс образования результата по разрядам с использованием приведенной таблицы описан ниже : а) разряд 1: С16 + В16 = 1716; 7 остается в разряде 1; 1 переносится в разряд 2; б) разряд 2: 116 + 716 + 116 = 916, где вторая 116 – единица переноса. Таким образом: 1 С16 + 7 В16 = 9 716. Проверим результат. Для этого определим полные значения слагаемых и результата (см. Перевод целых чисел): 1С16 = 1*161 + 12*160 = 16 + 12 = 28; 7В16 = 7*161 + 11*160 = 112 + 11 = 123; 9716 = 9*161 + 7*160 = 144 + 7 = 151. Поскольку 28 + 123 = 151, сложение выполнено верно. Правила вычитания При вычитании используются таблицы сложения, приведенные ранее. Пример 3. Вычесть из двоичного числа 101 двоичное число 11. Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 3 | 2 | 1 | | уменьшаемое: | 1 | 0 | 1 | | вычитаемое: | | 1 | 1 | Процесс образования результата по разрядам описан ниже: а) разряд 1: 12 – 12 = 02; б) разряд 2: поскольку 0 < 1 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 3. Тогда разряд 2 результата рассчитывается как 102 – 12 = 12; в) разряд 3: поскольку единица была занята в предыдущем шаге, в разряде 3 остался 0. Таким образом: 1 0 12 - 1 12 = 1 02. Проверим результат. Для этого определим полные значения слагаемых и результата. По таблице (или с помощью Перевод целых чисел)имеем: 1012 = 5; 112 = 3; 102 = 2. Поскольку 5 – 3 = 2, вычитание выполнено верно. Пример 4. Вычесть из шестнадцатеричного числа 97 шестнадцатеричное число 7В. Запишем алгебраические слагаемые в столбик в порядке “уменьшаемое – вычитаемое” и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 2 | 1 | | уменьшаемое: | 9 | 7 | | вычитаемое: | 7 | В | Процесс образования результата по разрядам описан ниже: а) разряд 1: поскольку 716 < В16 и непосредственное вычитание невозможно, занимаем для уменьшаемого единицу в старшем разряде 2. Тогда 1716 – В16 = С16; б) разряд 2: поскольку единица была занята в предыдущем шаге, разряд 2 уменьшаемого стал равным 816. Тогда разряд 2 результата рассчитывается как 816 – 716 = 116. Таким образом: 9 716 - 7 В16 = 1 С16. Для проверки результата используем данные из примера 2. Таким образом, вычитание выполнено верно. Правила умножения Таблица умножения двоичных цифр приведена ниже (обозначения строк и столбцов соответствуют слагаемым): Пример 5. Перемножить двоичные числа 101 и 11. Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 3 | 2 | 1 | | сомножители: | 1 | 0 | 1 | | | 1 | 1 | Процесс образования результата по шагам умножения множимого на каждый разряд множителя с последующим сложением показан ниже: а) умножение множимого на разряд 1 множителя дает результат: 1012 * 12 = 1012; б) умножение множимого на разряд 2 множителя дает результат: 1012 * 12 = 1012 ; в) для получения окончательного результата складываем результаты предыдущих шагов: | слагаемые: | | 1 | 0 | 1 | | 1 | 0 | 1 | | | сумма: | 1 | 1 | 1 | 1 | Для проверки результата найдем полные значения сомножителей и произведения: 1012 = 5; 112 = 3; 11112 = 15. Поскольку 5 * 3 = 15, умножение выполнено верно: 1012 * 112 = 11112. Пример 6. Перемножить шестнадцатеричные числа 1С и 7В. Используем таблицу умножения шестнадцатеричных чисел (обозначения строк и столбцов соответствуют слагаемым): | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | | 1 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F | | 2 | 0 | 2 | 4 | 6 | 8 | A | C | E | 10 | 12 | 14 | 16 | 18 | 1A | 1C | 1E | | 3 | 0 | 3 | 6 | 9 | C | F | 12 | 15 | 18 | 1B | 1E | 21 | 24 | 27 | 2A | 2D | | 4 | 0 | 4 | 8 | C | 10 | 14 | 18 | 1C | 20 | 24 | 28 | 2C | 30 | 34 | 38 | 3C | | 5 | 0 | 5 | A | F | 14 | 19 | 1E | 23 | 28 | 2D | 32 | 37 | 3C | 41 | 46 | 4B | | 6 | 0 | 6 | C | 12 | 18 | 1E | 24 | 2A | 30 | 36 | 3C | 42 | 48 | 4E | 54 | 5A | | 7 | 0 | 7 | E | 15 | 1C | 23 | 2A | 31 | 38 | 3F | 46 | 4D | 54 | 5B | 62 | 69 | | 8 | 0 | 8 | 10 | 18 | 20 | 28 | 30 | 38 | 40 | 48 | 50 | 58 | 60 | 68 | 70 | 78 | | 9 | 0 | 9 | 12 | 1B | 24 | 2D | 36 | 3F | 48 | 51 | 5A | 63 | 6C | 75 | 7E | 87 | | A | 0 | A | 14 | 1E | 28 | 32 | 3C | 46 | 50 | 5A | 64 | 6E | 78 | 82 | 8C | 96 | | B | 0 | B | 16 | 21 | 2C | 37 | 42 | 4D | 58 | 63 | 6E | 79 | 84 | 8F | 9A | 100 | | C | 0 | C | 18 | 24 | 30 | 3C | 48 | 54 | 60 | 6C | 78 | 84 | 90 | 9C | 108 | 114 | | D | 0 | D | 1A | 27 | 34 | 41 | 4E | 5B | 68 | 75 | 82 | 8F | 9C | 109 | 116 | 123 | | E | 0 | E | 1C | 2A | 38 | 46 | 54 | 62 | 70 | 7E | 8C | 9A | 108 | 116 | 124 | 132 | | F | 0 | F | 1E | 2D | 3C | 4B | 5A | 69 | 78 | 87 | 96 | 100 | 114 | 123 | 132 | 141 | Запишем множители в столбик и пронумеруем разряды, присвоив младшему разряду номер 1: | номера разрядов: | 2 | 1 | | сомножители: | 1 | С | | 7 | В | Процесс образования результата по шагам умножения множимого на каждый разряд множителя с последующим сложением показан ниже (для простоты записи у чисел не показан атрибут шестнадцатеричной системы счисления): а) умножение на разряд 1 дает результат: 1С*В = (10+C) * B = 10*B+C*B = (1*B)*10+C*B = B0+84 = 134; б) умножение на разряд 2 дает результат: 1С*70 = (10+C)*7*10 = 10*7*10+C*7*10 = 700+540 = С40; в) для получения окончательного результата складываем результаты предыдущих шагов: 134+ С40 = D74. Для проверки результата найдем полное значение сомножителей и произведения, воспользовавшись результатами примера 2 и правилами формирования полного значения числа: 1С16 = 28; 7В16 = 123; D7416 = 13*162 + 7*161 + 4*160 = 3444. Поскольку 28 * 123 = 3444, умножение выполнено верно: 1С16 * 7В16 = D7416. Сложение по модулю Важной операцией в информатике является сложение по модулю. Это операция арифметического сложения, при котором единица переноса в старший разряд, если таковая образуется при поразрядном сложении, отбрасывается. Обычно при выполнении этой операции конкретизируют, о каком модуле идет речь, например, по модулю 10, или по модулю 2, или по модулю 16. Обозначается эта операция ⊕. Таблица сложения двоичных чисел по модулю 2 приведена ниже (обозначения строк и столбцов соответствуют слагаемым): Пример 7. Сложить по модулю 2 двоичные числа 10 и 11. Сложение выполним поразрядно: 1) разряд единиц: 0⊕1 = 1; 2) разряд десятков: 1⊕1 = 0. Таким образом, 102⊕112 = 012. Чтобы подчеркнуть, что в сложении участвовали двухразрядные слагаемые, в результате оставляются обе цифры. Таблица сложения десятичных чисел по модулю 10 приведена ниже (обозначения строк и столбцов соответствуют слагаемым): | | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | 0 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | | 1 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | 2 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | | 3 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | | 4 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | | 5 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | | 6 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | | 7 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | | 8 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | | 9 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | Пример 8. Сложить по модулю 10 десятичные числа 59 и 152. Сложение выполним поразрядно: 1) разряд единиц: 9⊕2 = 1; 2) разряд десятков: 5⊕5 = 0; 3) разряд сотен: 0⊕1 = 1. Таким образом, 59⊕152 =101.
|