Устройство компьютера

Электронный компьютер был разработан в 50-е годы как устройство для
workst.gif (1710 bytes) производства быстрых вычислений. В то время никто не задумывался над его информационными приложениями и усилия разработчиков были направлены в основном на повышение быстродействия компьютера.

         В 60-е годы была сделана попытка использовать компьютер для осуществления информационных операций - индексирования и анализа текста. С помощью соответствующего программного обеспечения в память компьютера стали записывать тексты и искать возможности оперирования с ними. В настоящее время существует множество фирм, производящих компьютеры. Это, например, Dell, Acer, IBM. Для тех, кто профессионально с компьютером не связан, расскажем очень кратко о некоторых принципах функционирования компьютера.

         Информация для компьютера представляется в виде организованного множества элементов - букв или цифр, форма организации которых определяется некоторым сводом правил. Информация вводится в память компьютера, где для массивов данных отводятся поля с адресами. Сюда же вводится и программа обработки массива данных, предусматривающая последовательность выполнения операций. Обработка данных, превращается в формализованный процесс поиска, хранения и оперирования с данными.

         Элементы данных организуются в поля, каждому полю присваивается идентификатор, позволяющий отыскать это поле в памяти компьютера. Самостоятельная логическая совокупность элементов образует слово, законченная информационная фраза из множества слов образует запись, семантически связанные записи составляют файл данных.

        Организация данных на физическом уровне состоит в запоминании (записи) и хранении информации (данных) на физических носителях. Организация данных на логическом уровне отражает способ оперирования с данными в представлении программиста или пользователя.

ris1.gif (4738 bytes)

         Структурно компьютер состоит из пяти основных функциональных блоков, объединенных общей задачей быстро производить арифметические и логические действия над числами (рис. 1). Характер действий и их последовательность определяются программой, представляющей собой определенным образом организованную совокупность машинных операций, называемых командами. Руководит работой компьютера устройство управления. Оно получает команды из памяти, декодирует их и генерирует необходимые для их выполнения сигналы. Каждая команда в памяти находится по определенному адресу, который указывается программным счетчиком, находящимся в устройстве памяти. Для запоминания команд в устройстве управления имеется специальный регистр команд.

         Устройств ввода и вывода служат для преобразования информации с тех языков
pen_ii.gif (1447 bytes) программирования и тех скоростей, на которых работает компьютер, на те, которые воспринимает человек или другая система, работающая с данным компьютером. Важнейшим функциональным блоком компьютера является процессор. В нашей стране получили широкое распространение процессоры фирм Intel, AMD и др.

         Подробнее происходящее в компьютере процессы иллюстрируются схемой
ris2.gif (5765 bytes) центрального процессора, изображенной на рис. 2. Команды от оператора поступают через устройство ввода в регистр инструкций. По этим инструкциям блок управления вырабатывает команды для всех функциональных блоков компьютера (путь сигналов управления показан штриховой линией). Система регистров общего пользования служит оперативной памятью для поступающих на вход данных.

         Арифметическое устройство производит арифметические и логические операции над поступающими от регистра общего назначения данными. О том, какие именно следует выполнять функции, говорят команды блока управления.

         Адресный регистр обеспечивает правильную адресацию данных в системе памяти, он также снабжает каждую следующую инструкцию указаниями адресов памяти, где она будет запоминаться.

         Одним из ключевых функциональных блоков компьютера является программный счетчик, назначение которого состоит в обновлении каждой инструкции и временном запоминании ее номера. Если записанная программа перейдет в другой инструктивный номер, это изменение будет зафиксировано программным счетчиком. Информация об этом изменении поступает также в регистр инструкций. При каждом следующем шаге рабочей программы происходит обращение к программному счетчику с запросом о выполнении соответствующей операции.

         Информация в компьютере запоминается в виде групп двоичных знаков (0 и 1) на запоминающих устройствах - регистрах. Группа двоичных знаков, обрабатываемых одновременно, называется машинным словом, а число двоичных знаков в слове - длиной слова. Слово является базовой логической единицей информации в компьютере. Типичные процессоры имеют длину слова 4, 8, 12, 16 или 32 двоичных разряда. Слово длиной 8 бит называется байтом. Оно же часто используется для измерения емкости памяти. В современных компьютерах наиболее распространено слово в 16 бит.

         Каждая ячейка памяти компьютера запоминает одно машинное слово. Возможности компьютера определяются числом команд, которое можно ввести в оперативную память. Максимальная емкость оперативной памяти в миникомпьютерах не превышает обычно 32M слов, в суперкомпьютерах емкость оперативной памяти достигает 1000M слов (M = 1 048 576).

         Резкое повышение производительности миникомпьютеров при сравнительно небольшом удорожании привело к созданию мегамини- или супермини-компьютеров. Появление компьютеров нового класса связано с успехами в технологии их изготовления, с расширением их функциональных возможностей. Так, увеличилась скорость, и расширился набор команд центрального процессора, выросла пропускная способность устройств ввода-вывода, расширен диапазон адресов, увеличился ассортимент внешних устройств.

         Одновременно с этим появилась возможность создать для супермини-компьютеров богатое программное обеспечение, существенно отличающееся от математического обеспечения типичных миникомпьютеров. В то же время это математическое обеспечение ориентировано на интерактивный режим работы пользователя с машиной, т. е. на непосредственное общение. Крупными производителями программного обеспечения можно считеть: Microsoft, Symantec, Borland, Microprose и др.

         В начале 70-х годов американская фирма Intel предложила вместо интегрального модуля с жесткой логикой разработать стандартный логический блок, конкретное назначение которого можно определить после его изготовления, т. е. создать программируемую интегральную схему. Гак появился микропроцессор - многофункциональный цифровой микроэлектронный модуль с программируемой логикой, сделавший революцию в электронике и технике обработки информации.

         Основой микропроцессора является большая интегральная схема, в которой происходят все функциональные и вычислительные операции. Микропроцессор составляет основу микрокомпьютера.

         В структурном отношении микрокомпьютер представляет собой интегральную схему, содержащую центральный процессор, устройства памяти и весь набор соединительных устройств. Иногда такой компьютер вместе с дисплеем может размещаться в небольшом кейсе (такой микрокомпьютер называется ноутбук (Notebook)).

         В 1980 г. основу почти всех микрокомпьютеров составляли однокристальные микропроцессоры, у которых на одном кристалле выполнены центральный процессор, устройство памяти, устройство ввода-вывода и другие логические схемы. Число транзисторов на одном кристалле достигало примерно 70 тыс. штук. В настоящее время уже имеются монокристаллические микросхемы с числом элементарных вентилей до 5 млн. штук, что закладывает основу для перехода к микрокомпьютерам следующего нового поколения.

         Производство микрокомпьютеров происходит в нарастающем темпе.

         Персональный компьютер представляет собой микрокомпьютер с "дружественным" программным обеспечением и необходимым периферийным оборудованием, выполненный в компактной форме, с габаритными размерами обычного телевизора. Это первый массовый инструмент интенсификации профессиональных знаний. В его состав входят микрокомпьютер, клавиатура, дисплей, устройство памяти на магнитных, оптических или магнито-оптических дисках. К персональному компьютеру можно подключить малогабаритное печатающее устройство, модем для выхода на каналы связи, стример, для записи информации на магнитнцю ленту и другие периферийные устройства. Персональные компьютеры снабжаются магнитными "дисками винчестерского типа (об устройствах памяти будет расскозано ниже).

         На практике персональный компьютер встречается в трех модификациях: бытовой, профессиональный и персональная вычислительная система.

         К первому поколению персональных компьютеров американского производства относятся компьютер TRS-80 на базе микропроцессора Z80 фирмы Zilog, компьютер Apple - II фирмы Apple Computer, компьютер PET фирмы Commondore Int. на базе микропроцессора 6502 фирмы MOS Technology.

         Ко второму поколению принадлежат компьютеры IBM Personal Computer фирмы IBM с микропроцессором i8088, Rainbow-100 фирмы DEC на базе микропроцессора Z80A/i8088.

         Микрокомпьютеры второго поколения с 16-разрядным словом отличаются от своих предшественников включением в комплект кроме гибких дисков также малогабаритных винчестерских дисков большой емкости, графических устройств, увеличенным объемом оперативной памяти до 256 КБайт - 2 Мбайт. Остальные поколения являются производными от этих.

         Характеристики персональных компьютеров постоянно улучшаются, и в настоящее время технические характеристики и области применения мини- и микрокомпьютеров перекрываются.

         Возможности широкого освоения микрокомпьютеров и использования их в практической деятельности человека (как, впрочем, и любых других типов компьютеров) во многом определяются соответствующим программным обеспечением. Главная особенность программного обеспечения микрокомпьютеров состоит в предоставлении возможности непрофессиональному пользователю достаточно эффективно эксплуатировать, компьютер.

         Несколько слов о программном обеспечении компьютера. Программное (или математическое) обеспечение представляет собой совокупность программ,
deskpub.jpg (17594 bytes)подпрограмм, языков программирования и других сред конечного пользователя, рассматриваемое нами как запас знаний компьютера. Все программы и подпрограммы представляют собой некоторую библиотечную структуру с определенными системными связями (соглашениями), подчиняющимися единому правилу документации. В программное обеспечение входят операционная система, комплекс средств ввода и вывода, средства программирования, управления данными, поддержки математического обеспечения, а также комплексы испытательных и прикладных программ.

         Автоматическое решение задачи, поставленной перед компьютером, организует операционная система, объединяющая набор программных и технических средств в решающий процесс. Операционная система может обеспечить функционирование компьютера в трех различных режимах:

btzbul2a.gif (345 bytes)реального, времени (real time), когда компьютер реагирует на запросы в соответствии с установленным для них приоритетом:

btzbul2a.gif (345 bytes)разделения времени (time-sharing), когда операционная система разделяет время процессора, оперативной памяти и других ресурсов компьютера между пользователями (у каждого пользователя создается иллюзия монопольного владения компьютером);

btzbul2a.gif (345 bytes)пакетной обработки задач (batch), обеспечивающей наиболее полную загрузку компьютера.

         Программы описывают данные, которые необходимо обработать, сообщают адреса размещения данных внутри компьютера, дают инструкции для последовательности выполнения основных задач. Обращение к компьютеру на программном языке транслируется им на "машинный" язык, т. е. на понятный компьютеру язык бинарного кодирования.

         Вполне естественно желание разработчиков повысить уровень программирования, приблизив его к изложению "чистого" алгоритма без уточнения информации об использовании ресурсов компьютера. Такой алгоритм должен быть свободен от побочной информации, а язык высокого уровня должен оптимальным образом кодировать описываемый алгоритм.

         Проследив развитие машинных языков и соответствующих процедур процессоров, можно обнаружить в программировании тенденцию ухода от физических адресов, прежде всего при обращении к внешней памяти, затем при обращении к оперативной памяти и, в конце концов, при обращении к регистровой памяти.

         Вообще, соотношение языков программирования условно показано на рис. 3.
ris3.gif (4102 bytes)

         Возможность общения с компьютером на естественном языке при трансляции на язык высокого уровня приведет к интеллектуализации компьютера, что особенно важно в применении к микрокомпьютерам. Нужно сказать, что создание "интеллектуального" математического обеспечения является на ближайшее время одним из главных научных направлений в области программирования, вычислительной математики и математической логики.

         В настоящее время к программированию предъявляется целый комплекс требований. К ним в первую очередь относится надежность программы, затем ее структурированность и модульность. Важным качеством является возможность ее модификации. Особым случаем модификации программы служит перенос ее на другой тип компьютера, более совершенный, чем предыдущий. При этом не менее важно, насколько большой объем оперативной памяти требуется для данной программы.

         К сожалению, техника программирования не базируется на какой-либо определенной фундаментальной теории и скорее является искусством. Дело в том, что для решения конкретной задачи можно предложить несколько программ, разработанных разными программистами и отличающихся друг от друга последовательностью логических операций, временем вычислений, степенью использования оперативной памяти компьютера. Пока не поддается оценке и эффективность конкретной программы.

         В конце 80-х годов существовала проблема отставания математического вооружения компьютера от его физических возможностей. Зато в настоящее время данная проблема преобразилась с точностью до наоборот. Т.е. современное программное обеспечение способно использовать все системные ресурсы компьютера и при этом требовать еще большего увеличения данных ресурсов.

         Специально для микропроцессоров фирмой Intel был разработан язык ПЛ/М. Он ориентирован на архитектуру процессоров серии Intel 8088. Возник этот язык на базе языка ПЛ/1, объединившего достоинства языков Фортран, Алгол, Кобол, в результате чего получился универсальный язык высокого уровня, с помощью которого можно решать числовые, научные и коммерческие задачи, а также выполнять системное программирование.

         Проблема доступности программирования на персональных компьютерах в некоторой степени решается предоставлением пользователю языка программирования Бейсик (Basic - Beginner's All-purpose Symbolic Instruction Code), разработанного специально для начального обучения программированию непрофессиональных программистов. Бейсик является весьма простым языком, к его достоинствам относится возможность общения с компьютером в диалоговом режиме.

         С машинных кодов и вышеописанных языков программирования современные программисты (или основная их часть) перешли на визуальные языки объектно-ориентированного программирования, например, Visual C++, Visual Basic, Turbo Vision, Delphi. Программирование на таких языках не отнимает много времени при создании каких-либо сложных программных продуктов.

         Кроме того, современные компиляторы позволяют отлаживать программу в процессе ее написания, чтобы избежать серьезных ошибок с трудноустановимыми причинами после того, как программа будет закончена и откомпилирована. Они точно указывают на место ошибки (или возможной ошибки), с указанием ошибки, и, возможно, способом ее устранения.

         Кроме перечисленных выше языков, широкое распространение получили системы управления базами данных, также имеющие свой язык управления. Их тоже следует отнести к языкам программирования. В списке наиболее распространенных СУБД присутствуют : Access, FoxPro, Visual FoxPro, Clipper, Clarion и др. Программа, управляющая базой данных, на таких языках пишется очень быстро и не требует больших знаний от программиста.

         Органической частью компьютера является периферийное оборудование, удельный вес которого в комплексе вычислительной техники составляет примерно 40 - 50 %. К этому оборудованию относятся устройства долговременной памяти, устройства внешней памяти, устройства ввода-вывода: терминалы, системы отображения информации, печатающие устройства.

         По функциональному назначению периферийные устройства принадлежат к одной из трех групп:

btzbul2a.gif (345 bytes)ввода информации - клавиатура, сканер, модем, джойстик, зуковая и сетевая карты;

btzbul2a.gif (345 bytes)вывода информации - дисплей, принтер, модем, звуковая и сетевая карта;

btzbul2a.gif (345 bytes)внешние запоминающие устройства, доступ к которым может быть последовательным, как в стримере, или прямым, как в системе памяти на магнитных, оптических и магнито-оптических дисках.

         Часто для удобства работы с компьютером названные типы устройств объединяют
comput2.gif (301 bytes) в одном корпусе.

         Одним из непременных атрибутов любого компьютера является терминал, представляющий собой оконечное устройство для оперативного ввода и вывода информации, используемое как интерфейс между человеком и компьютером. Заметим, что компьютер может взаимодействовать не только с человеком, но и с другим компьютером или измерительной системой, поэтому класс терминального оборудования весьма широк.

         К классу терминалов относятся телетайпы, устройства отображения информации на электронно-лучевых трубках или плазменных экранах (дисплеях), принтеры (Epson, HP), терминалы с речевым вводом данных, связные терминалы, графопостроители.
laser2.jpg (23458 bytes)Возможность встраивать в терминал микропроцессор привела к созданию нового типа терминалов - "интеллектуальных", которые способны самостоятельно выполнять целый ряд функций.

         Нельзя не сказать о проблеме сопряжения периферийного оборудования с компьютером. Это сопряжение достигается с помощью интерфейса. Он представляет собой программно-управляемый модуль, предназначенный для сопряжения устройств ввода-вывода информации с центральным процессором компьютера. К компьютеру подключаются различные устройства периферийного оборудования и каждое из них необходимо соответствующим образом "состыковать" с компьютером.

         Для этого необходимо подобрать программу управления интерфейса так, чтобы сигналы от соответствующих устройств ввода и вывода информации воспринимались процессором и, наоборот, информация от процессора могла регистрироваться внешними устройствами. Иными словами, условием обмена данными между периферийными устройствами и центральным процессором является наличие синхронизации в широком смысле слова, что и выполняет устройство интерфейса.

         Пусть, например, необходимо ввести данные в компьютер. Этот процесс следует
inkeybrd.jpg (17348 bytes)начать с тестовых проверок, чтобы убедиться в физической возможности осуществления этой процедуры. Поэтому работа начинается с того, что устройство ввода посылает в компьютер сигнал, указывающий на готовность ввода порции информации. В свою очередь, компьютер должен известить устройство ввода, т. е. оператора, о том, что он закончил обработку предыдущей порции данных и готов к приему следующей. В результате происходящего обмена сигналами устанавливается режим, позволяющий вводить новую порцию данных.

         При выводе информации из компьютера устройство вывода должно известить компьютер о том, что оно готово воспринимать данные, т. е. послать в компьютер так называемый "сигнал занятости". Компьютер начнет выдавать данные только после проверки наличия такого сигнала. В свою очередь, компьютер должен послать в устройство вывода сигнал готовности передавать данные и устройство вывода должно убедиться в наличии такого сигнала.
copycomp.jpg (16004 bytes)

         Этот очевидный режим обмена информацией между компьютером и периферийными устройствами имеет недостаток - нерациональное использование времени, так как компьютер значительную часть времени находится в режиме ожидания. Поэтому разработан более экономичный режим обмена данными - ввод и вывод по прерыванию. В этом режиме выполнение основной программы компьютером чередуется с выполнением подпрограмм ввода и вывода.

Другие записи

10.06.2016. Хранение информации
Регистрация и хранение информации берет свое начало от высеченных на камне изображений в эпоху неолита и бронзового века. Прошли века, пока к человеку пришли письменность, а затем книгопечатание.         …