|
|||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Пример современной многоуровневой вычислительной машины с шестью уровнямиРассмотрим пример шестиуровневой вычислительной машины (рис.1.2).
Уровень языка Ассемблер
Уровень 0 – аппаратное обеспечение машины. Его электронные схемы выполняют программы, написанные на языке уровня 1. На этом, цифровом логическом уровне, объекты называются вентилями. Вентиль вычисляет простые функции входных данных (И, ИЛИ, НЕ). Каждый вентиль формируется из нескольких транзисторов. Несколько вентилей формируют один бит памяти, который содержит 0 или 1. Биты памяти, объединенные в
группы (например, по 16, 32, 64), формируют регистры. Каждый регистр может содержать одно двоичное число до определённого предела. Уровень 1 – микроархитектурный уровень. На этом уровне совокупности 8 или 32 регистров формируют локальную память и схему, называемую АЛУ (арифметико-логическое устройство). АЛУ выполняет простые арифметические операции. Регистры вместе с АЛУ формируют тракт данных, по которому поступают данные. Основная операция тракта данных заключается в выборе одного или двух регистров, далее АЛУ производит над ними требуемую операцию (например: сложение или сдвиг), результат помещается в один из этих регистров. Тракт данных контролируется либо аппаратными средствами, либо особой программой, называемой микропрограммой. Эта программа является интерпретатором для команд на уровне 2. Микропрограмма вызывает команды из памяти и выполняет их одну за другой, используя при этом тракт данных. Например, для выполнения команды ADD требуется вызвать команду из памяти, поместить на регистры её операнды, в АЛУ вычислить сумму и результат записать в память либо оставить на регистре. На компьютере с аппаратным контролем тракта данных происходит такая же процедура, но при этом нет программы, которая контролирует интерпретацию команд уровня 2. Интерпретация: каждая команда, написанная на языке более высокого уровня, рассматривается как набор команд языка более низкого уровня, который выполняется сразу по чтению команды из очереди. Трансляция: каждая команда языка более высокого уровня заменяется на эквивалентный набор команд языка более низкого уровня, при этом создаётся новая программа, которую будет выполнять компьютер. Уровень 2 – уровень архитектуры системы команд. Каждый производитель публикует руководство для продаваемых компьютеров. В руководстве содержится информация о наборе машинных команд, которые выполняются микропрограммой - интерпретатором или аппаратным обеспечением, если производитель поставляет два интерпретатора для одной машины, то он должен издать два руководства по машинному языку, отдельно для каждого интерпретатора. Уровень 3 – уровень операционной системы. Большинство команд в его языке совпадают с командами уровня 2 (они выполняются микропрограммой или аппаратным обеспечением уровня 2), но появляются некоторые дополнительные особенности, расширяющие возможности программиста по управлению работой отдельными элементами компьютера. Новые средства, появившиеся на уровне 3, выполняются интерпретатором уровня 2. Операционная система: комплекс взаимосвязанных системных программ, назначение которого – организация взаимодействия пользователя с компьютером и выполнение всех других программ. Нижние три уровня предназначены для работы системных программистов, специализирующихся на разработке и построении новых виртуальных машин. Уровни с 4 и выше предназначены для прикладных программистов, решающих конкретные задачи. Уровни 2 и 3 обычно интерпретируются, их машинные языки цифровые. Уровни 4 и выше поддерживаются трансляторами, языки содержат слова и сокращения понятные человеку. Уровень 4 – символическая форма одного из языков более низкого уровня. На этом уровне можно писать программы в приемлемой для человека форме. Программы этого уровня сначала транслируются на язык уровня 1, 2 или 3, а затем интерпретируются соответствующей виртуальной или фактически существующей машиной. Программа, выполняющая трансляцию, называется ассемблером. Уровень 5 – языки высокого уровня. Данный уровень обычно состоит из языков, разработанных для прикладных программистов. Трансляторы, которые обрабатывают эти программы, называются компиляторами. Для некоторых языков (например, язык Java) используется метод интерпретации. Вывод: компьютер проектируется как иерархическая структура уровней, каждый из которых надстраивается над предыдущим. Набор типов данных, операций и особенностей каждого уровня называется архитектурой компьютера. Архитектура определяет ряд аспектов написания программ, видимых на уровне программиста (например, объём используемой памяти, набор команд, модели памяти и т.д.). Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |