Почему компьютер можно назвать формальным исполнителем

Многоуровневая структура компьютера

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

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

Вышеупомянутую проблему можно решить двумя способами. Оба способа подразумевают разработку новых команд, более удобных для человека, чем встроенные команды. Эти новые команды в совокупности формируют язык, который мы будем называть Я 1. Встроенные машинные команды тоже формируют язык, и мы будем называть его Я 0. Компьютер может выполнять только программы, написанные на его машинном языке Я 0. Два способа решения проблемы различаются тем, каким образом компьютер будет выполнять программы, написанные на языке Я 1, — ведь в конечном итоге компьютеру доступен только машинный язык Я 0.

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

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

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

При интерпретации каждая команда программы на Я 1 перекодируется в Я 0 и сразу же выполняется. В отличие от трансляции, здесь не создается новая программа на Я 0, а происходит последовательная перекодировка и выполнение команд. С точки зрения интерпретатора, программа на Я 1 есть не что иное, как «сырые» входные данные. Оба подхода широко используются как вместе, так и по отдельности.

Впрочем, чем мыслить категориями трансляции и интерпретации, гораздо проще представить себе существование гипотетического компьютера или виртуальной машины, для которой машинным языком является язык Я 1. Назовем такую виртуальную машину М 1, а виртуальную машину для работы с языком Я 0 — М 0. Если бы такую машину М 1 можно было бы сконструировать без больших денежных затрат, язык Я 0, да и машина, которая выполняет программы на языке Я 0, были бы не нужны. Можно было бы просто писать программы на языке Я 1, а компьютер сразу бы их выполнял. Даже с учетом того, что создать виртуальную машину, возможно, не удастся (из-за чрезмерной дороговизны или трудностей разработки), люди вполне могут писать ориентированные на нее программы. Эти программы будут транслироваться или интерпретироваться программой, написанной на языке Я 0, а сама она могла бы выполняться существующим компьютером. Другими словами, можно писать программы для виртуальных машин так, как будто эти машины реально существуют.

Трансляцию и интерпретацию возможно выполнить только в том случае, когда Я 0 и Я 1 не сильно отличаются друг от друга. Но ведь цель создания Я 1 заключалась в создании языка более удобного для человека. Очевидно что она не может быть достигнута. Чтобы решить эту проблему можно создать еще одну виртуальную машину М 2 и язык Я 2, который будет более понятен для человека, чем Я 1. При этом, программы написанные на языке Я 2 могут транслироваться на язык Я 1 или выполняться интерпретатором, написанным на языке Я 1.

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

Многоуровневая структура компьютера

Многоуровневая структура компьютера

Компьютер с п уровнями можно рассматривать как п разных виртуальных машин, у каждой из которых есть свой машинный язык. Термины «уровень» и «виртуальная машина» мы будем использовать как синонимы. Только программы, написанные на Я 0, могут выполняться компьютером без трансляции или интерпретации. Программы, написанные на Я 1, Я 2, …, Я п, должны проходить через интерпретатор более низкого уровня или транслироваться на язык, соответствующий более низкому уровню.

В данный момент вы не можете посмотреть или раздать видеоурок ученикам

Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобрев в каталоге.

Получите невероятные возможности

2. Раздавайте видеоуроки в личные кабинеты ученикам.

3. Смотрите статистику просмотра видеоуроков учениками.

Конспект урока «Компьютер как исполнитель»

На прошлых уроках мы с вами узнали очень много нового и интересного. Надеюсь, вы не забыли, что алгоритм – это описание подробного плана последовательности действий, который необходимо выполнить, чтобы решить задачу.

Также вы помните свойства, которыми должен обладать алгоритм?

А какие формы записи алгоритмов существуют?

На прошлом занятии мы с вами говорили об исполнителе алгоритма. Так?

Давайте вспомним, кто же это такой? Или что это такое?

Исполнитель алгоритма – это объект, который выполняет команды (шаги, инструкции) по определённым правилам и в нужном порядке.

Давайте разберёмся, какими свойствами должен обладать объект, чтобы его можно было назвать исполнителем.

Первое свойство. Исполнитель работает только в определённой обстановке, или среде, то есть это такое «место обитания», в котором исполнитель может выполнить алгоритм. В какой-то другой, не его, среде исполнитель может сломаться, например, от перегрузки, или от высокой температуры, при большой влажности и так далее.

Второе свойство. Каждый исполнитель выполняет команды (действия, инструкции) только из заданного списка, то есть из системы команд исполнителя. Каждая команда имеет свои условия применимости – это состояние среды, в которой может быть выполнена команда.

Третье свойство. Исполнитель может отказаться выполнить действие, если даётся инструкция, которая не входит в системы команд исполнителя. Также возникает отказ исполнителя, если для выполнения команды используется неправильная среда.

Исполнителем может быть человек, машина, животное, управляемая игрушка. А ещё компьютер. Вот о нём мы сегодня и поговорим.

Исполнитель-компьютер ничего не знает о цели алгоритма. Он не задаёт вопросов: Зачем? Почему? Кому это надо?

Вы помните, что компьютер выполняет алгоритм, написанный человеком на одном из языков программирования.

И такой алгоритм называется программой.

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

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

Так как компьютер не отказывается выполнять команды, которые ему заданы, то его называют формальным исполнителем алгоритмов.

Так-так-так, давайте разберёмся, что такое формальный исполнитель.

Существуют два типа исполнителей: формальные и, как вы, наверное, догадались, неформальные.

Формальный исполнитель – это исполнитель, который выполняет одну и ту же команду всегда одинаково.

Неформальный исполнитель – это исполнитель, который может выполнять команду по-разному.

Рассмотрим такой пример: вы слушаете песню, которая проигрывается в вашем телефоне определённым певцом. Телефон воспроизводит его исполнение всегда одинаково. Получается, что телефон – это формальный исполнитель.

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

Можно сказать, что неформальным исполнителем обычно бывает человек, а формальным – технические устройства, например, компьютер, телефон.

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

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

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

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

Прикладные программы – это программы, предназначенные для решения задач пользователя. Они помогают создавать и изменять информационные объекты, например, тексты в программе Microsoft Word, рисунки в простой программе Paint, или, например, в программе Adobe Photoshop, которую используют профессиональные художники, и другое. Есть разные виды программ, но изучать их мы будет в другое время.

Ребята, а вы знаете, что слово «компьютер» возникло давным-давно ещё в латинском языке, только, конечно, произносилось оно немного иначе. И переводилось как «вычислять». Позже в английском языке появилось слово «to compute», а уже от него – такое знакомое нам «computer».

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

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

Вот список терминов:

Исполнитель алгоритмов, формальный исполнитель, неформальный исполнитель, системные программы, прикладные программы.

Давайте найдём для каждого определения его значение.

Давайте проверим, правильно ли вы выполнили задание, а заодно и повторим, что мы сегодня изучили на уроке.

Исполнитель алгоритмов – это объект, который выполняет команды (шаги, инструкции) по определённым правилам и в нужном порядке.

Формальный исполнитель – это исполнитель, который выполняет одну и ту же команду всегда одинаково.

Неформальный исполнитель – это исполнитель, который может выполнять команду по-разному.

Системные программы – это программы, которые управляют самим компьютером.

Прикладные программы – это программы, предназначенные для решения задач пользователя.

А теперь поиграем.

В этих предложениях некоторые слова сбежали и собрались в одном месте. Помогите словам найти свои места в предложениях.

Давайте, проверим насколько правильно вы расставили слова, и ещё раз повторим информацию, с которой вы сегодня познакомились.

Исполнитель работает только в определённой обстановке, или среде, то есть это такое «место обитания», в котором исполнитель может выполнить алгоритм.

Когда человек написал программу, её обязательно необходимо ввести в память компьютера, а затем запустить на исполнение.

Телефон – это формальный исполнитель.

Человек обычно бывает неформальным исполнителем.

Отказ от выполнения команды может быть по моральным соображениям.

Компьютер выполняет алгоритм, написанный человеком на одном из языков программирования.

Каждый исполнитель выполняет команды только из заданного списка, то есть из системы команд исполнителя.

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

Компьютер как формальный исполнитель алгоритмов (программ)

Компьютер как формальный исполнитель алгоритмов (программ)

Основные вопросы: Формальный исполнительАлгоритм и программаОсобенности выполнен

Основные вопросы: Формальный исполнительАлгоритм и программаОсобенности выполнения программы

Формальный исполнитель

Алгоритмы и программы Алгоритм-это последовательность действий для достижения це

Алгоритмы и программы Алгоритм-это последовательность действий для достижения цели(результата)

Алгоритмы и программы Состав команд ЯМК предложил Джон фон Нейман в 1946г.

Алгоритмы и программы Состав команд ЯМК предложил Джон фон Нейман в 1946г.

Алгоритмы и программы Программа управления компьютером- это последовательность к

Алгоритмы и программы Программа управления компьютером- это последовательность команд ЯМК.Каждая команда-директива для процессора на выполнение определённого действия

Этапы выполнения программы

Этапы выполнения программы

Особенности выполнения программы

Особенности выполнения программы

Особенности выполнения программы

Особенности выполнения программы

ВЫВОД: Компьютер не обладает способностью к анализу результатов, не может обойти

ВЫВОД: Компьютер не обладает способностью к анализу результатов, не может обойтись без программы и исходных данных, следовательно, компьютер- формальный исполнитель алгоритмов и программ.

Контрольные вопросы В чём отличие формального исполнителя от интеллектуального?Ч

Контрольные вопросы В чём отличие формального исполнителя от интеллектуального?Что такое ЯМК? Кто предложил такую систему?Какие особенности выполнения программы на ЯМК компьютером?Что такое ЯПВУ? Особенности выполнения программы компьютером, написанной на ЯПВУ?Почему компьютер можно назвать формальным исполнителем?

Работа компьютера имитирует (моделирует) информационную деятельность человека.

Но компьютер – техническое устройство, поэтому для того, чтобы он выполнял определенные действия, им нужно управлять.

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

ü Двоичное кодирование информации

ü Программное управление работой компьютера (идея Чарльза Беббиджа)

ü Хранимая программа (по предложению американского математика Джона фон Неймана (1903 – 1957) наряду с данными каждая команда программы работы компьютера, кодируемая определенной последовательностью нулей и единиц, помещается как число в одной из ячеек оперативной памяти)

Как в действительности происходит реализация этих принципов и осуществляется формальная автоматическая работа компьютера?

Современный компьютер – это единство аппаратных средств (Hardware) и программного обеспечения (Software).

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

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

Средства контроля и диагностики
Системное
Операционные системы
Программное обеспечение (ПО) Система программирования Трансляторы
Языки программирования
Пакеты прикладных программ
Уникальное Прикладное
Библиотеки стандартных программ

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

Устройство управления (УУ) процессора воспринимает, считывая из оперативной памяти, команду за командой, анализирует, а затем организует ее выполнение, используя соответствующие устройства компьютера. Эти устройства произведут действия: напечатают на бумаге, выведут на экран, воспримут с клавиатуры, занесут на магнитный диск и т.д.

Для выполнения команд самим процессором, в нем предусмотрено арифметико – логическое устройство (АЛУ). Выполнив одну команду из оперативной памяти, компьютер переходит к другой команде и так, пока не встретит команду на окончание работы или команду, которую не сможет выполнить. Он не сможет выполнить команду, если она предназначается устройству, не подключенному к компьютеру, или отсутствует в его системе команд, или содержит синтаксическую ошибку. Если программа составлена правильно, то компьютер выполнит программу за конечное число шагов и выдаст человеку результат решения задачи.

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

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

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

Архитектура современных ПК

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

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

Основные особенности архитектуры ПК сводятся к принципам компоновки аппаратуры, а также к выбранному набору системных аппаратных средств.

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

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

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

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

Таким образом, структура ПК из одношинной, которая применялась только в первых компьютерах, становится трехшинной.

Трехшинная структура ПК

Рисунок 2. Трехшинная структура ПК

АЛУ и УУ в современных ПК образуют процессор. Процессор, который состоит из одной или нескольких больших интегральных схем, называется микропроцессором или микропроцессорным комплектом.

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector