|
|
Что такое информационная технология 2
| Из битов складывается все многообразие данных, обрабаты¬ваемых компьютером. Назначение компьютера — выполнять программы, а программа представляет собой набор некоторых команд. Каждая команда — это элементарная инструкция, пред-писывающая компьютеру выполнить ту или иную операцию над данными. Например: сложить два числа, прочитать данные с диска, послать символ (знак) на дисплей, напечатать символ на принтере. Все команды компьютера выполняет специальное уст-ройство — процессор (точнее, микропроцессор).
На физическом уровне микропроцессор компьютера может выполнять над значениями битов только логические операции, (конъюнкции, дизъюнкции и отрицания — см. п. 14.13.2), а так¬же операции сдвига. Однако в представлении пользователя ин¬теллектуальные способности компьютера сводятся к умению вы¬полнять четыре действия арифметики и сравнивать числа по ве¬личине.
Все команды и все данные в компьютере представлены ком-бинациями битов. В зависимости от типа команды, компьютер может воспринимать ту или иную комбинацию битов (представленную одним, несколькими байтами или даже частью байта) и как знак (буква, запятая и т. д.), и как число, и как не¬кое условное обозначение, и как другую команду.
При этом сама по себе конфигурация битов в данном байте для процессора — пустой звук. Интерпретация набора битов за¬висит исключительно от кода команды процессора, которая вы¬полняется в данный момент.
Например, в оперативной памяти расположены два байта с таким содержимым: 01000100 и 01010010. В регистры процессора поступили адреса этих байтов и некая команда, предписываю¬щая, что необходимо сделать с этими конфигурациями битов (значениями битов). Если, согласно коду команды, следует счи-
тать значения байтов символами и послать их, скажем, на дис-плей, процессор выведет на монитор латинские буквы DR (первый из этих байтов содержит код буквы D, а второй — код буквы R). При этом мы не касаемся вопроса, в каком месте эк-рана появятся эти буквы — это тема другого разговора. Есля же в коде команды указано, что надо сложить значения этих байтов как целые числа, процессор будет считать, что в первом байте записано число 68, во втором — число 82, беспрекословно сло¬жит их и получит результат: 150. И опять-таки мы не касаемся вопроса, куда запишет процессор это число — в свой регистр, в какой-то третий байт или в один из пары байтов (такая пара на¬зывается машинным словом). В рамках дозволенного процессор никогда не проверяет смысл предложенной ему операции: в этом причина бесчисленных ошибок, которые допускает программист, который, как всякий нормальный человек, может «оговориться» (например, напишет вместо кода операции 37 код 47), и процес¬сор сделает совсем не то, что имелось в виду, — например, при¬мет число в первом байте за адрес машинного слова, куда надо переслать значение числа из второго байта. Полагаю, из этого примера ясно, что возможны миллионы и миллионы бессмыс¬ленных операций процессора, которые выражаются в нелепых результатах, зависании компьютера и т. п. |
| Категория: электроника 3 | Добавил: sergei4 (10.10.2010)
|
| Просмотров: 124
| Рейтинг: 0.0/0
|
|
|