информатика010171. Арифметические основы информатики
Скачать 90.5 Kb.
|
Федеральное агентство связи Поволжская государственная академия телекоммуникаций и информатики Заочный факультет КОНТРОЛЬНАЯ РАБОТА № 1 по информатике на тему « Арифметические основы информатики » Студентки Кадыровой Дианы Анатольевны Факультет СС и СК курс 1 шифр 06з057 гр. 063 Работа выслана «»2006 г. Оценкадата2006г. Подпись преподавателя _ Казань 2006 г. Исходные данные: A,B,C – дата рождения студента 01.01.71. А=01, В=01, С=71 Задание
а)
Прямой код В знаковый разряд помещается цифра 1- если число отрицательное и 0 – если положительное, а в разряды цифровой части числа — двоичный код его абсолютной величины -0110 1.00000012 0110 0.00000012 7110 0.10001112
Обратный код Для положительных чисел обратный код равен прямому, для отрицательных он получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы — нулями. 0110 0.00000012 -0110 1.11111102 7110 0.10001112
Дополнительный код Дополнительный код получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. 0110 000000012 + 1 000000102 -7110 1.01110002 + 1 1.01110012
Для перевода в десятичную систему числа х , записанного в q-ичной cистеме счисления (q = 2, 8 или 16) в виде xq = (anan-1 ... a0 , a-1 a-2 ... a-m)q сводится к вычислению значения многочлена x10 = an qn + an-1 qn-1 + ... + a0 q0 + a-1 q -1 + a-2 q-2 + ... + a-m q-m средствами десятичной арифметики. 0101 – не существует. Изменим число А так, чтобы существовало число Ав, а именно нужно его уменьшить минимум до 0, тогда: 001 = 0*10 = 010 Либо увеличим В до 2 0101 = 1*10 = 110
Операцию можно выполнить двумя способами: R=B+C-A в прямых кодах, либо R=(-А)+В+C, где –A – в обратном коде B = 01 = + 0.0000001 C = 71 = _0.1000111 A = 01 = 0.0000001 0.1000111 Проверка: 0.10001112 =7110 -А=-01 = + 1.1111110 В = 01 = 0.0000001 С = 71 = + 0.1000111 0.1000110 + 1 0.1000111 Получили правильный результат в прямом коде 0.1000111= 7110
Запишем –С в дополнительном коде: -7110 1.01110002 + 1 1.01110012 А = 01 =+ 0.0000001 В= 01= 0.0000001 -С=-71 =+ 1.0111001 1.0111011 Проверка: Переведем полученное число в прямой код, при этом биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1.1000100 + 1 = 1.1000101 = –6910.
Запишем –A и –С в дополнительном коде: -0110 1.11111102 + 1 1.11111112 -7110 1.01110002 + 1 1.01110012 -А=-01 = + 1.1111111 В = 01 = 0.0000001 -С=-71= + 1.0111001 1.0111001 перенос отбрасывается Проверка: Переведем полученное число в прямой код, при этом биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1.1000110 + 1 = 1.1000111 = –7110. 8. Вычислить с помощью тетрад и триад следующие операции:
1.переведем число А в двоичную систему исчисления 0110 = 0012 2. разобьем полученное число на тетрады: 0001 3. поставим в соответствие каждой тетраде (в нашем случае она одна) 16-ричный символ: 00012 = 116 4. разобьем полученное в п.1. число на триады: 001 = 001 5. поставим в соответствие каждой триаде 8-ричный символ: 001 1
Так как А=В, то вычисления еще раз производить не будем и сразу запишем полученный результат: 1.переведем число B в двоичную систему исчисления
1.переведем число C в двоичную систему исчисления 7110 = 10001112 2. разобьем полученное число на тетрады: 1000111= 0100 0111 3. поставим в соответствие каждой тетраде 16-ричный символ: 0100 0111 4 7 4. разобьем полученное в п.1. число на триады: 1000111 = 001 000 111 5. поставим в соответствие каждой триаде 8-ричный символ: 001 000 111 1 0 7 |