- •Оглавление
- •Задание 1. «Системы счисления и двоичное представление информации в памяти компьютера»
- •Пример №1
- •Пример №2
- •Варианты задания 1
- •Задание 2. «Кодирование текстовой информации. Кодировка ascii. Основные кодировки кириллицы»
- •Пример №1
- •Пример №2
- •Пример №3
- •Варианты задания 2
- •Задание 3. «Выполнение арифметических операций в двоичной, восьмеричной и шестнадцатеричной системах счисления»
- •Пример №1
- •Пример №2
- •Варианты задания 3
- •Задание 4: «Вычисление информационного объема сообщения»
- •Пример №1
- •Пример №2
- •Пример №3
- •Пример №4
- •Пример №5
- •Пример №6
- •Пример №7
- •Варианты задания 4
- •Задание 5: «Представление целых чисел в эвм. Арифметические операции над целыми числами. Сложение и вычитание»
- •Пример:
- •Варианты задания 5
- •Задание 6: «Представление целых чисел в эвм. Арифметические операции над целыми числами. Умножение и деление»
- •Пример №1
- •Пример №2
- •Варианты задания 6
- •Задание 7 «Представление вещественных чисел в эвм. Арифметические операции над числами с плавающей запятой»
- •Пример №1
- •Пример №2
- •Пример №3
- •Пример №4
- •Варианты задания 7
- •Задание 8 «Двоично-десятичное представление информации в памяти компьютера. Операции с двоично-десятичными числами»
- •Запрещённые битовые комбинации 1010 1011 1100 1101 1110 1111
- •Варианты задания 8
- •Задание 9 «Эффективное кодирование. Алгоритм Шеннона-Фано»
- •Варианты задания 9
Задание 6: «Представление целых чисел в эвм. Арифметические операции над целыми числами. Умножение и деление»
Что нужно знать:
-
перевод чисел из десятичной в двоичную систему счисления
-
операция умножения целых чисел в ЭВМ производится как последовательность сложений и сдвигов, при этом произведение получается путем сложения частных произведений, представляющих собой разряды множимого, сдвинутых влево в соответствии с позициями разрядов множителя. Частные произведения, полученные умножением на 0, игнорируются. При умножении n-разрядных сомножителей разрядность произведения 2n. Знак произведения формируется путем сложения знаковых разрядов сомножителей. Возможные переносы из знакового разряда игнорируются
-
деление производится так же, как это делается в десятичной системе. Сначала проверяется, можно ли вычесть значение делителя из старших разрядов делимого. Если возможно, то в разряде частного записывается единица и определяется частная разница. В противном случае в частное записывается 0, и разряды делителя сдвигаются вправо на один разряд по отношению к разрядам делимого. К полученной предыдущей разнице сносится очередная цифра делимого, и данный процесс продолжается до тех пор, пока не будет достигнута требуемая точность.
Если учесть, что все вычитания в ЭВМ заменяются сложением в ОК или ДК, то действительно, операция деления приводится к операциям сложения и сдвигам вправо разрядов делителя относительно разрядов делимого. Делимое перед операцией деления должно быть приведено к 2n- разрядной сетке. Только в этом случае при делении на n- разрядный делитель получается 2n- разрядное число. Знак частного формируется также путем сложения знаковых разрядов делимого и делителя, как это делалось при умножении
Пример №1
Дано: А10=8 и В10=10. Вычислить произведение чисел А и В, результат представить в прямом коде.
Общий подход:
-
Перевести оба числа в двоичную систему счисления, затем представить числа в прямом коде
-
Выполнить необходимые вычисления.
Решение:
-
Переводим исходные данные в двоичную систему счисления:
А10=8 А2=10002
В10=10 В2=10102
-
Запишем исходные данные в прямом коде - 0 в знаковом разряде, далее двоичный код числа (при переводе не забываем про разрядность чисел – они занимают в памяти 1 байт, т.е. под число отводится 8 разрядов):
АПК=0:0001000
ВПК=0:0001010
-
Для наглядности вычислений будет перемножать двоичные аналоги прямого кода, т.е. числа 1000 и 1010.
1 0 0 0 - множимое
1 0 1 0 – множитель
_ сдвиг на один разряд влево
1 0 0 0 - множимое
_ - сдвиг на один разряд влево
1 0 0 0 - множимое
_____________________________________
1 0 1 0 0 0 0 - произведение
-
Теперь запишем результат в прямом коде. Полученное произведение – это двухбайтовое число, поэтому под число отводится 16 разрядов.
Рпк=0:000000001010000
Пример №2
Дано: А10=84 и В10=14. Разделить А на В, результат представить в прямом коде.
Общий подход:
-
Перевести оба числа в двоичную систему счисления, затем представить числа в прямом коде
-
Выполнить необходимые вычисления.
Решение:
-
Переводим исходные данные в двоичную систему счисления:
А10=84 А2=1010100
В10=14 В2=1110
-
Запишем исходные данные в прямом коде - 0 в знаковом разряде, далее двоичный код числа (при переводе не забываем про разрядность чисел – частное занимает в памяти 2 байта, делитель – 1 байт):
АПК=0:000000001010100
ВПК=0:0001110
-
Для наглядности вычислений будет делить двоичные аналоги прямого кода, т.е. числа 1010100 и 1110.
1 0 1 0 1 0 0 1110
1 1 1 0 110
1 1 1 0
1 1 1 0
00
0
0
-
Теперь запишем результат в прямом коде. Полученное частное – это однобайтовое число, поэтому под число отводится 8 разрядов.
Спк=0:0000110