Информатика. Курс лекций. Громов Ю.Ю - 42 стр.

UptoLike

ж) ХOR
101001011
010011011
; з) ХOR
11101100
10000011
; и) ХOR
00101101
11111111
.
2. Предположим, что требуется выделить средние три бита в семиразрядной строке посредством помещения нулей в ос-
тавшиеся ее четыре бита, не изменяя значения трех выделяемых битов. Какую маску и операцию следует использовать в
этом случае?
3. Предположим, что нужно заменить значение средних трех битов в семиразрядной строке на обратное, не изменяя при
этом значения оставшихся четырех битов. Какую маску и операцию следует использовать в этом случае?
4. а) Предположим, что была выполнена операция XOR с первыми двумя битами некоторой строки битов, а затем эта
операция последовательно выполнялась с очередным результатом и следующим битом строки. Как общий результат связан с
количеством единиц в исходной строке битов?
б) Какое отношение приведенная выше задача имеет к определению требуемого значения бита четности при кодирова-
нии сообщения?
5. Иногда удобнее использовать логическую операцию вместо цифровой. Например, логическая операция AND комби-
нирует значения двух битов по тому же принципу, что и операция умножения. Какая логическая операция почти идентична
операции сложения двух битов? Какие отличия существуют между этими операциями?
6. Какую логическую операцию и в сочетании с какой маской следует использовать для преобразования строчных букв
в прописные в коде ASCII?
7. Каков будет результат при выполнении циклического сдвига вправо на три позиции для каждой из следующих бито-
вых комбинаций:
а) 01101010 ; б) 00001111; в) 01111111.
8. Каков будет результат при циклическом сдвиге влево на одну позицию для каждой из следующих битовых комбина-
ций, представленных в шестнадцатеричной системе счисления:
а) АВ; б) 5С; в) В7; г) 35.
9. На сколько разрядов влево нужно сдвинуть восьмиразрядную строку, чтобы результат был эквивалентен цикличе-
скому сдвигу этой же строки вправо на три бита?
10. Какая комбинация битов будет представлять сумму значений 01101010 и 11001100, если считать, что эти значения
представляют числа в формате с плавающей точкой, речь о котором шла в главе 1?
11. Используя машинный язык, описываемый в приложении В, напишите программу, которая поместит единицу в
старший бит ячейки памяти с адресом А7, оставив значения всех остальных битов этой ячейки без изменения.
12. Используя машинный язык, описываемый в приложении В, напишите программу, которая скопирует значения че-
тырех средних битов ячейки памяти с адресом Е0 в младшие четыре бита ячейки памяти с адресом Е1, при этом в старшие
четыре бита этой ячейки должны быть занесены нули.
2.5. ВЗАИМОДЕЙСТВИЕ ЦП
С ПЕРИФЕРИЙНЫМИ УСТРОЙСТВАМИ*
Основная память и центральный процессор образуют центральное звено компьютера. Ниже мы рассмотрим, как это
центральное звено взаимодействует с различными периферийными устройствами, такими, как дисковые накопители, прин-
теры, а также другими компьютерами.
Взаимодействие через контроллеры. Взаимодействие между машиной и другими устройствами обычно осуществля-
ется через промежуточное устройство, называемое контроллером (controller). Если в качестве примера взять персональный
компьютер, то контроллер будет представлять собой ту монтажную плату, которая вставляется в разъем на основной мон-
тажной плате компьютера (motherboard – материнской плате). С помощью кабелей платы контроллеров соединяются с
периферийными устройствами, установленными в самом компьютере, а соединение с внешними устройствами осуществля-
ется через промежуточные разъемы, установленные на задней стенке корпуса компьютера.
Каждый контроллер обеспечивает взаимодействие с определенным видом устройства. Некоторые из них разработаны
для взаимодействия с монитором, другие отвечают за взаимодействие с дисководами, а есть контроллеры, поддерживающие
взаимодействие компьютера с устройствами чтения компакт-дисков. Поэтому иногда вместе с новым периферийным уст-
ройством приходится покупать и новый контроллер. Задача контроллера состоит в преобразовании сообщений и данных,
которыми обмениваются компьютер и периферийное устройство, в тот формат, который будет совместим с внутренними
характеристиками самого компьютера и подключенного к нему устройства. Подобные контроллеры часто представляют со-
бой небольшие специализированные компьютеры с собственной основной памятью и центральным процессором, который
выполняет программу, управляющую всеми действиями данного контроллера.
Когда контроллер вставляется в один из разъемов на материнской плате компьютера, он электрически подключается к
шине, соединяющей ЦП компьютера и его основную память (рис. 2.8). В месте своего подключения каждый контроллер
осуществляет непрерывное наблюдение за сигналами, посылаемыми из ЦП машины, и отвечает на те, которые адресованы
непосредственно ему.
В частности, центральный процессор способен взаимодействовать с контроллерами, подключенными к шине, так же,
как он взаимодействует с оперативной памятью. Для того чтобы послать цепочку битов контроллеру, прежде всего ее нужно
поместить в один из регистров общего назначения, после чего выполнить команду, подобную команде сохранения, чтобы
"сохранить" код в контроллере. Точно так же, для того чтобы получить цепочку битов от контроллера, исполняется команда,
похожая на команду загрузки. В некоторых компьютерах предусмотрены дополнительные коды операции для этих действий.
Команды с такими кодами называются командами ввода-вывода. Команды ввода-вывода находят контроллер с помощью
системы адресации, подобной системе адресации оперативной памяти. А именно, каждому контроллеру соответствует уни-
кальный набор адресов (адреса вводавывода), которые используются в командах вводавывода для указания контроллера-
адресата.