Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
programmirovanie-shpora.docx
Скачиваний:
3
Добавлен:
25.04.2019
Размер:
71.4 Кб
Скачать

10. Команды процессора

Процессор может выполнять различные действия, например, складывать или сравнивать два числа, пересылать в память или чи­тать из нее данные. Все действия, которые может выполнять про­цессор, пронумерованы, и эти номера называются кодами команд процессора. В машинной команде закодирована инструкция процессору: «что делать (сложение)» и над какими объектами производить действия (регистры АХ и ВХ). Для облегчения процесса число­вые коды стали заменять английскими словами, смысл которых от­ражал выполняемую операцию. Например, приведенный выше код «8BD8h» можно заменить на «фразу»:ADD AX,BX, ADD - от английского to add - складывать. Смысл этой фразы: сло­жить содержимое регистров АХ и ВХ и результат поместить в ре­гистр АХ. Замена числовых кодов на мнемокоды привела к созданию языков ассемблера. Мы пишем программу в понятных нам языко­вых терминах, а в числовые коды ее переводит специальная про­грамма-транслятор. Ассем­блер необходим, когда в своих программах вы хотите использовать функции операционной системы или заменить их, когда вас не устраивает скорость выполнения операций стандартными средствами. С появлением операционных систем Windows и систем программирования C++ значимость языков ассем­блера для разработки сложных приложений потеряла актуальность. Основная работа компьютера состоит в том, что процессор чи­тает из памяти команду (двоичные коды), выполняет ее и ре­зультаты выполнения этой команды снова помещает в память. Регистры процессора - это тоже память, ее отличие от ОЗУ состоит в том, что адресом регистра является имя регистра. Есть у компьютера еще одна разновидность памяти - порты. Адресом порта является номер порта. Все программы, готовые к выполнению, состоят из машинных команд, имеющих определенный формат, т. е. правила ин­терпретации двоичных данных. Машинная команда может быть длиной от 1 байта до 15 байт. Рассмотрим характеристику полей машинной команды: ---необязательное поле «Префиксы» может содержать допол­нительную информацию для выполнения команды. Например, если значение этого поля равно F3H (префикс REP в команде Ассембле­ра), то команда выполняется такое число раз, которое находится в регистре процессора СХ; ---поле «Код операции», в отличие от других полей, являет­ся обязательным. В этом поле находится код команды процессора; ----необязательное поле «modr/m» (mode - режим, register - ре­гистр, memory - память) определяет режим адресации (регистр - ре­гистр, регистр - память, память - регистр), а также длину операндов; ---необязательное поле «sid» содержит дополнительную ин­формацию для определения эффективного адреса; ---необязательное поле «Смещение» содержит значение эффективного адреса; ---необязательное поле «Непосредственный операнд» содержит определенное значение операнда-источника.

11. Графика

Картинка, которую мы видим на экране монитора, обновляет­ся более 60 раз в секунду, при этом информация, «что изображать на экране», находится в оперативной памяти компьютера - видео­буфере. Адрес начала расположения этой информации однознач­но определен. Изображение на экране складывается из точек. Чем больше этих точек, тем выше разрешающая способность и каче­ство отображения. В зависимости от видеоадаптера, монитора и режима отображения разрешающая способность может составлять 320x200, 800x600 и т. д. точек, соответственно, по горизонтали и по вертикали. Каждой точке экрана соответствует определенное число байтов в видеопамяти. Например, в режиме с разрешением 320x200 и отображением 256 цветов каждой точке на экране соот­ветствует один свой байт видеопамяти.

Физически цвет на экране монитора образуется комбинацией красного (Red), зеленого (Green) и

голубого (Blue) цветов. Интен­сивности красного, зеленого и голубого цветов могут меняться не­прерывно в некотором диапазоне. Комбинации этих цветов с раз­ными интенсивностями генерируют всю цветовую политру. Про­граммно интенсивности цветов задаются числом в диапазоне от 0 до 255. Таким образом, общее число комбинаций интенсивностей цветов составляет 256x256x256=16777216. Преобразование числового значения цвета в определенную интенсивность осуществляется в DAC-устройстве - видеоадаптере (DAC - Digital to Analog Converter - аналогово-цифровой преобра­зователь). В регистрах этого устройства (DAC-регистрах) находят­ся значения интенсивностей красного, зеленого и голубого цветов. Видеоадаптер считывает из видеопамяти байт, соответствующий нулевой точке (пикселу) на экране. Это значение интерпретируется как номер DAC-регистра, из которого извлекаются интенсивности трех цветов. Конвертор преобразовывает эти значения в аналоговый сигнал для электронно-лучевой трубки, и нулевая точка ото­бражается требуемым цветом. Такая операция выполняется для каж­дой точки экрана.

При включении компьютера операционная система заполняет регистры палитры и DAC-регистры значениями по умолчанию это стандартные цвета, к которым мы привыкли.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]