Что такое ямк в информатике
Перейти к содержимому

Что такое ямк в информатике

  • автор:

Лекция 2. Введение в языки программирования

Язык программирования это способ записи программ решения различных задач на ЭВМ в понятной для компьютера форме . Такая запись называется исходным текстом программы , или программой . Процессор компьютера непосредственно понимает язык машинных команд ( ЯМК ). Программы на ЯМК писались лишь для самых первых ламповых машин ЭВМ первого поколения .

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

В 1950- х гг . появляются первые средства автоматизации программирования языки Автокоды . Позднее для языков этого уровня стало применяться название « Ассемблеры ». Появление языков типа ассемблер облегчило участь программистов . Переменные величины стали изображаться символическими именами . Числовые коды операций заменились на мнемонические ( словесные ) обозначения , которые легче запомнить . Язык программирования стал понятнее для человека , но при этом удалился от языка машинных команд . Чтобы компьютер мог исполнять программы на ассемблере , потребовался специальный переводчиктранслятор . Транслятор это системная программа переводящая , текст программы на ассемблере в текст эквивалентной программы на ЯМК .

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

П . П . Кудрявцев . Курс лекций по дисциплине : » Информатика и программирование «

Языки программирования высокого уровня

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

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

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

Тремя элементарными структурными алгоритмами являются следующие .

Первыми популярными языками высокого уровня , появившимися в 1950- х гг ., были Фортран , Кобол ( в США ) и Алгол ( в Европе ). Языки Фортран и Алгол были ориентированы на науч но — технические расчеты математического характера . Кобол язык для программирования экономических задач . В Коболе по сравнению с двумя другими названными языками слабее развиты математические средства , но зато хорошо развиты средства обработки текстов , организация вывода данных в форме требуемого документа . Для первых ЯПВУ предметная ориентация языков была характерной чертой .

Большое количество языков программирования появилось в 1960 1970 х — гг . А за всю историю ЭВМ их было создано более тысячи . Но распространились , выдержали испытание временем не многие . В 1965 г . в Дартмутском университете был разработан язык Бейсик . По замыслу авторов это простой язык , легко изучаемый , предназначенный для программирования несложных расчетных задач . Наибольшее распространение Бейсик получил на микро — ЭВМ и персональных компьютерах . Однако Бейсик неструктурный язык , и потому он плохо подходит для обучения качественному программированию . Справедливости ради следует заметить , что последние версии Бейсика для ПК ( например , QBasic) стали более структурными и по своим изобразительным возможностям приближаются к таким языкам , как Паскаль .

В эпоху ЭВМ третьего поколения получил большое распространение язык PL/1 (Program Language One), разработанный фирмой IBM. Это был первый язык , претендовавший на универсальность , т . е . на возможность решать любые задачи : вычислительные , обработки текстов , накопления и поиска информации . Однако PL/1 оказался слишком сложным языком . Для машин типа IBM 360/370 транслятор с него не мог считаться оптимальным , содержал ряд невыявленных ошибок . На ЭВМ класса мини и микро он вообще не получил распространения . Однако тенденция к универсализации языков оказалась перспективной . Старые языки были модернизированы в универсальные варианты Алгол -68, Фортран -77.

Значительным событием в истории языков программирования стало создание в 1971 г . языка Паскаль . Его автор швейцарский профессор Никлаус Вирт разрабатывал Паскаль

Лекция 2. Введение в языки программирования

как учебный язык структурного программирования .

Наибольший успех в распространении этого языка обеспечили персональные компьютеры . Фирма Borland International, Inc ( США ) разработала систему программирования Турбо Паскаль для ПК . Турбо Паскаль это не только язык и транслятор с него , но еще и операционная оболочка , обеспечивающая пользователю удобство работы . Турбо Паскаль вышел за рамки учебного предназначения и стал языком профессионального программирования с универсальными возможностями . Транслятор с Турбо Паскаля по оптимальности создаваемых им программ близок наиболее удачному в этом отношении транслятору транслятору с Фортрана . В силу названных достоинств Паскаль стал основой многих современных языков программирования , например , таких как Ада , Модула -2 и др .

Язык программирования Си ( английское название С ) создавался как инструментальный язык для разработки операционных систем , трансляторов , баз данных и других системных и прикладных программ . Так же как и Паскаль , Си это язык структурного программирования , но , в отличие от Паскаля , в нем заложены возможности непосредственного обращения к некоторым машинным командам , к определенным участкам памяти компьютера . Дальнейшее развитие Си привело к созданию языка объектно — ориентированного программирования Си ++.

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

ЭВМ будущего , пятого поколения называют машинами « искусственного интеллекта ». Но прототипы языков для этих машин были созданы существенно раньше их физического появления . Это языки ЛИСП и Пролог .

ЛИСП появился в 1965 г . Язык ЛИСП основан на понятии рекурсивно определенных функций . А поскольку доказано , что любой алгоритм может быть описан с помощью некоторого набора рекурсивных функций , то ЛИСП , по сути , является универсальным языком . С его помощью на ЭВМ можно моделировать достаточно сложные процессы , в частности интеллектуальную деятельность людей .

Язык Пролог разработан во Франции в 1972 г . также для решения проблемы « искусственного интеллекта ». Пролог позволяет в формальном виде описывать различные утверждения , логику рассуждений и заставляет ЭВМ давать ответы на заданные вопросы .

Ме тоды т рансляции

Реализовать тот или иной язык программирования на ЭВМ это значит создать транслятор с этого языка для данной ЭВМ . Существуют два принципиально различных метода трансляции . Они называются соответственно компиляция и интерпретация .

При компиляции в память ЭВМ загружается программа — компилятор . Она воспринимает текст программы на ЯПВУ как исходную информацию . После завершения компиляции получается программа на языке машинных команд . Затем в памяти остается только программа на ЯМК , которая выполняется , и получаются требуемые результаты .

Интерпретатор в течение всего времени работы программы находится во внутренней памяти . В ОЗУ помещается и программа на ЯПВУ . Интерпретатор в последовательности выполнения алгоритма « читает » очередной оператор программы , переводит его в команды и тут же выполняет эти команды . Затем переходит к переводу и выполнению следующего оператора . При этом результаты предыдущих переводов в памяти не сохраняются . При повторном выполнении одной и той же команды она снова будет транслироваться . При компиляции исполнение программы разбивается на два этапа : трансляцию и выполнение .

П . П . Кудрявцев . Курс лекций по дисциплине : » Информатика и программирование «

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

Компоновщик

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

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

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

С трук тура и способы описания языков программирования высокого уровня

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

Лекция 2. Введение в языки программирования

Рисунок 1 Структура языка программирования высокого уровня

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

Для описания синтаксиса языка программирования тоже нужен какой — то язык . В этом случае речь идет о метаязыке (« надъязыке »), предназначенном для описания других языков . Наиболее распространенными метаязыками в литературе по программированию являются металингвистические формулы Бекуса — Наура ( язык БНФ ) и синтаксические диаграммы . В дальнейшем мы чаще всего будем использовать язык синтаксических диаграмм . Они более наглядны , легче воспринимаются . В некоторых случаях для удобства мы будем обращаться к отдельным элементам языка БНФ .

В БНФ всякое синтаксическое понятие описывается в виде формулы , состоящей из правой

и левой части , соединенных знаком ::=, смысл которого эквивалентен словам « по определению есть ».

Слева от знака ::= записывается имя определяемого понятия ( метапеременная ), которое заключается в угловые скобки < >, а в правой части записывается формула или диаграмма , определяющая все множество значений , которые может принимать метапеременная .

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

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

< двоичная цифра >::=0|1 Значок | эквивалентен слову « или ». Это определение можно представить на языке

Особенности выполнения программы компьютером написанной на япву

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

Материалы: Презентация на тему: «Компьютер как формальный исполнитель алгоритмов (программ)». Приложение.

(объяснение материала происходит параллельно с показом подготовленной презентации)

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

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

Презентации» Информатика» Презентация Компьютер как формальный исполнитель алгоритмов

Слайды и текст этой презентации

Описание слайда:

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

Описание слайда:

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

Описание слайда:

Описание слайда:

Описание слайда:

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

Описание слайда:

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

Описание слайда:

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

Описание слайда:

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

Описание слайда:

Описание слайда:

Описание слайда:

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

Описание слайда:

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

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

Презентация успешно отправлена!

Ошибка! Введите корректный Email!

Возможности Java — Javatpoint

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

Ниже приведен список наиболее важных особенностей языка Java.

  1. Простой
  2. Объектно-ориентированный
  3. Портативный
  4. Независимость от платформы
  5. Защищено
  6. Прочный
  7. Нейтральная архитектура
  8. Интерпретация
  9. Высокая производительность
  10. Многопоточный
  11. Распределенный
  12. Динамический
Простой

Java очень легко выучить, а его синтаксис прост, понятен и понятен. Согласно Sun Microsystem, язык Java является простым языком программирования, потому что:

  • Синтаксис Java основан на C++ (поэтому программистам легче изучать его после C++).
  • В Java удалены многие сложные и редко используемые функции, например, явные указатели, перегрузка операторов и т. д.
  • Нет необходимости удалять объекты, на которые нет ссылок, поскольку в Java существует автоматическая сборка мусора.
Объектно-ориентированный

Java — это объектно-ориентированный язык программирования. Все в Java является объектом. Объектно-ориентированный означает, что мы организуем наше программное обеспечение как комбинацию различных типов объектов, которые включают в себя как данные, так и поведение.

Объектно-ориентированное программирование (ООП) — это методология, упрощающая разработку и обслуживание программного обеспечения за счет предоставления некоторых правил.

Основные концепции ООП:

  1. Объект
  2. Класс
  3. Наследство
  4. Полиморфизм
  5. Абстракция
  6. Инкапсуляция
Независимо от платформы

Java не зависит от платформы, потому что он отличается от других языков, таких как C, C++ и т. д., которые скомпилированы в машины, зависящие от платформы, в то время как Java — это язык для однократной записи и запуска в любом месте. Платформа — это аппаратная или программная среда, в которой работает программа.

Существует два типа платформ: программные и аппаратные. Java предоставляет программную платформу.

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

  1. Среда выполнения
  2. API (интерфейс прикладного программирования)

Код Java может выполняться на нескольких платформах, например, Windows, Linux, Sun Solaris, Mac/OS и т. д. Код Java компилируется компилятором и преобразуется в байт-код. Этот байт-код является независимым от платформы кодом, поскольку его можно запускать на нескольких платформах, т. Е. Написать один раз и запустить где угодно (WORA).

Защищено

Java наиболее известен своей безопасностью. С помощью Java мы можем разрабатывать системы, свободные от вирусов. Java защищен, потому что:

  • Нет явного указателя
  • Программы Java запускаются внутри изолированной программной среды виртуальной машины
  • Загрузчик классов: Загрузчик классов в Java является частью среды выполнения Java (JRE), которая используется для динамической загрузки классов Java в виртуальную машину Java. Это добавляет безопасности, отделяя пакет для классов локальной файловой системы от тех, которые импортируются из сетевых источников.
  • Верификатор байт-кода: Проверяет фрагменты кода на наличие нелегального кода, который может нарушать права доступа к объектам.
  • Менеджер безопасности: Определяет, к каким ресурсам класс может получить доступ, например чтение и запись на локальный диск.

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

Прочный

Английская добыча Робаста сильна. Java надежен, потому что:

  • Используется сильное управление памятью.
  • Отсутствие указателей, что позволяет избежать проблем с безопасностью.
  • Java обеспечивает автоматическую сборку мусора, которая запускается на виртуальной машине Java, чтобы избавиться от объектов, которые больше не используются приложением Java.
  • В Java есть обработка исключений и механизм проверки типов. Все эти моменты делают Java надежной.
Независимо от архитектуры

Java является архитектурно-нейтральным, поскольку в нем нет функций, зависящих от реализации, например фиксированный размер примитивных типов.

В программировании на C тип данных int занимает 2 байта памяти для 32-битной архитектуры и 4 байта памяти для 64-битной архитектуры. Однако он занимает 4 байта памяти как для 32-битной, так и для 64-битной архитектуры Java.

Портативный

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

Высокопроизводительный

Java быстрее, чем другие традиционные интерпретируемые языки программирования, потому что байт-код Java «близок» к собственному коду. Он все еще немного медленнее, чем компилируемый язык (например, C++). Java — интерпретируемый язык, поэтому он медленнее, чем компилируемые языки, например, C, C++ и т. д.

Распределенный

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

Многопоточный

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

Динамический

Java — динамический язык. Он поддерживает динамическую загрузку классов. Это означает, что классы загружаются по требованию. Он также поддерживает функции из своих родных языков, то есть C и C++.

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

Следующая темаС++ против Java

Что такое Java? Определение, значение и особенности платформ Java

Что такое Java?

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

Что такое платформа Java?

Платформа Java — это набор программ, которые помогают программистам эффективно разрабатывать и запускать приложения программирования Java. Он включает в себя механизм выполнения, компилятор и набор библиотек. Это набор компьютерного программного обеспечения и спецификаций. Джеймс Гослинг разработал платформу Java в Sun Microsystems, а позже ее приобрела корпорация Oracle.

Из этого руководства по Java вы узнаете:

  • Что такое Java?
  • Что такое платформа Java?
  • Определение и значение Java
  • Для чего используется Java?
  • История языка программирования Java
  • Версии Java
  • Функции Java
  • Компоненты языка программирования Java
  • Различные типы платформ Java
  • Что такое ПК?
  • Что такое язык ассемблера?
  • Что такое ассемблер и компилятор?
  • Как работает виртуальная машина Java?
  • Как платформа Java независима?

В этом видеоролике представлена ​​ платформа Java и объясняется, почему Java является не только языком программирования, но и платформой.

Щелкните здесь, если видео недоступно

Определение и значение Java

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

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

Для чего используется Java?

Вот несколько важных приложений Java:

  • Используется для разработки приложений для Android
  • Помогает создавать корпоративное программное обеспечение
  • Широкий спектр мобильных Java-приложений
  • Научные вычислительные приложения
  • Использование для анализа больших данных
  • Java-программирование аппаратных устройств
  • Используется для серверных технологий, таких как Apache, JBoss, GlassFish и т. д.

История языка программирования Java

Вот важные вехи из истории языка Java:

  • Первоначально язык Java назывался OAK.
  • Первоначально он был разработан для работы с портативными устройствами и телевизионными приставками. Дуб потерпел полное фиаско.
  • В 1995 году Sun изменила название на «Java» и модифицировала язык, чтобы воспользоваться преимуществами растущего бизнеса по разработке веб-сайтов.
  • Позднее, в 2009 году, корпорация Oracle приобрела Sun Microsystems и стала владельцем трех ключевых программных активов Sun: Java, MySQL и Solaris.

Версии Java

Вот краткая история всех версий Java с указанием даты выпуска.

Версии Java Дата выпуска
JDK Альфа и Бета 1995
JDK 1.0 23 января 1996 г.
ЖДК 1.1 19 февраля 1997 г.
J2SE 1. 2 8 декабря 1998 г.
J2SE 1.3 8 мая 2000 г.
J2SE 1.4 6 февраля 2002 г.
J2SE 5.0 30 сентября 2004 г.
Java SE 6 11 декабря 2006 г.
Java SE 7 28 июля 2011 г.
Java SE 8 18 марта 2014 г.
Java SE 9 21 сентября 2017 г.
Java SE 10 20 марта 2018 г.
ЯВА SE 11 25 сентября 2018 г.
ЯВА SE 12 19 марта 2019
ЯВА SE 13 17 сентября 2019 г.
ЯВА SE 14 17 марта 2020 г.
ЯВА SE 15 15 сентября 2020 г. (последняя версия Java)

Функции Java

Вот некоторые важные функции Java:

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

Компоненты языка программирования Java

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

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

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

Все эти функции реализованы в следующих 3 компонентах платформы Java:

Комплект для разработки Java (JDK)

JDK — это среда разработки программного обеспечения, используемая для создания апплетов и приложений Java. Полная форма JDK — это Java Development Kit. Разработчики Java могут использовать его в Windows, macOS, Solaris и Linux. JDK помогает им кодировать и запускать Java-программы. На один и тот же компьютер можно установить несколько версий JDK.

Зачем использовать JDK?

Вот основные причины использования JDK:

  • JDK содержит инструменты, необходимые для написания программ Java, и JRE для их выполнения.
  • Включает в себя компилятор, средство запуска приложений Java, Appletviewer и т. д.
  • Компилятор преобразует код, написанный на Java, в байтовый код.
  • Средство запуска приложений Java открывает JRE, загружает необходимый класс и выполняет его основной метод.
Виртуальная машина Java (JVM):

Виртуальная машина Java (JVM) — это механизм, обеспечивающий среду выполнения для управления Java-кодом или приложениями. Он преобразует байт-код Java в машинный язык. JVM является частью Java Run Environment (JRE). В других языках программирования компилятор создает машинный код для конкретной системы. Однако компилятор Java создает код для виртуальной машины, известной как виртуальная машина Java.

Почему JVM?

Вот важные причины использования JVM:

  • JVM обеспечивает независимый от платформы способ выполнения исходного кода Java.
  • Он имеет множество библиотек, инструментов и фреймворков.
  • После того как вы запустите программу Java, вы сможете запустить ее на любой платформе и сэкономить много времени.
  • JVM поставляется с компилятором JIT (Just-in-Time), который преобразует исходный код Java в низкоуровневый машинный язык. Следовательно, он работает быстрее, чем обычное приложение.
Java Runtime Environment (JRE)

JRE — это часть программного обеспечения, предназначенная для запуска другого программного обеспечения. Он содержит библиотеки классов, класс загрузчика и JVM. Проще говоря, если вы хотите запустить программу на Java, вам нужна JRE. Если вы не программист, вам не нужно устанавливать JDK, а достаточно JRE для запуска Java-программ.

Зачем использовать JRE?

Вот основные причины использования JRE:

  • JRE содержит библиотеки классов, JVM и другие вспомогательные файлы. Он не включает никаких инструментов для разработки Java, таких как отладчик, компилятор и т. д.
  • Он использует важные классы пакетов, такие как math, swing, util, lang, awt и библиотеки времени выполнения.
  • Если вам нужно запускать апплеты Java, в вашей системе должна быть установлена ​​JRE.

Различные типы платформ Java

Существует четыре различных типа платформ языка программирования Java:

1. Платформа Java, стандартная версия (Java SE): API Java SE предлагает основные функции языка программирования Java. Он определяет все основы типов и объектов для классов высокого уровня. Он используется для работы в сети, безопасности, доступа к базе данных, разработки графического пользовательского интерфейса (GUI) и анализа XML.

2. Платформа Java, Enterprise Edition (Java EE): Платформа Java EE предлагает API и среду выполнения для разработки и запуска масштабируемых, крупномасштабных, многоуровневых, надежных и безопасных сетевых приложений.

3. Платформа языка программирования Java, Micro Edition (Java ME): Платформа Java ME предлагает API и небольшую виртуальную машину, на которой выполняются приложения языка программирования Java на небольших устройствах, таких как мобильные телефоны.

4. Java FX: JavaFX — это платформа для разработки многофункциональных интернет-приложений с использованием упрощенного пользовательского интерфейса API. Он использует графические и мультимедийные механизмы с аппаратным ускорением, которые помогают Java использовать преимущества высокопроизводительных клиентов, а также современный внешний вид и высокоуровневые API-интерфейсы для подключения к сетевым источникам данных.

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

Что такое ПК?

Компьютер — это электронное устройство, способное выполнять вычисления. Все мы знаем, что он состоит из монитора, клавиатуры, мыши и памяти для хранения информации. Но самым важным компонентом компьютера является ПРОЦЕССОР. Это все мышление компьютера, но вопрос в том, как компьютер это думает? Как он понимает текст, изображения, видео и т. д.?

Что такое язык ассемблера?

Компьютер представляет собой электронное устройство, и он может понимать только электронные сигналы или двоичные сигналы. Например, электронный сигнал 5 вольт может представлять двоичное число 1, а 0 вольт может представлять двоичное число 0. Таким образом, ваш компьютер постоянно бомбардируется этими сигналами.

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

Например, символ # идентифицируется компьютером как 10101010. Точно так же шаблон для добавления функции представлен как 10000011.

Это известно как 8-битные вычисления. Современный процессор способен декодировать 64-битное время. Но какое отношение это понятие имеет к языку программирования JAVA? Позвольте понять это в качестве примера.

Предположим, вы хотите сказать компьютеру, что нужно сложить два числа (1+2), представленные некоторыми двоичными числами (10000011), как вы собираетесь сообщить об этом своему компьютеру? Да, мы собираемся использовать язык ассемблера для выполнения нашего кода.

«Язык ассемблера — самая элементарная форма языков разработки программного обеспечения».

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

  • Сохранить номер 1 в ячейке памяти, скажем, A
  • Сохранить номер 2 в ячейке памяти, скажем, B
  • Добавить содержимое местоположений A и B
  • Сохранить результаты

Но как мы это сделаем? Еще в 1950-х годах, когда компьютеры были огромными и потребляли много энергии, вы могли преобразовать свой ассемблерный код в соответствующий машинный код с 1 и 0, используя листы сопоставления. Позже этот код будет пробит в карты автомата и загружен в компьютер. Компьютер прочитает эти коды и выполнит программу. Это будет долгий процесс, пока на помощь не придет АССЕМБЛЕР.

Что такое ассемблер и компилятор?

С развитием технологий были изобретены устройства ввода-вывода. Вы можете напрямую ввести свою программу в ПК, используя АССЕМБЛЕР. Он преобразует его в соответствующий машинный код (110001. .) и передает его вашему процессору. Возвращаясь к нашему примеру с добавлением (1+2), ассемблер преобразует этот код в машинный код и выводит.

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

Но сам по себе ассемблер в этом процессе не участвует; это также требует, чтобы компилятор скомпилировал длинный код в небольшой фрагмент кода. С развитием языков разработки программного обеспечения весь этот ассемблерный код мог сократиться до одной строки print f 1+2 A с помощью программного обеспечения под названием COMPILER. Он используется для преобразования вашего кода языка C в ассемблерный код. Ассемблер преобразует его в соответствующий машинный код. Этот машинный код будет передан процессору. Наиболее распространенным процессором, используемым в ПК или компьютерах, является процессор Intel.

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

Теперь предположим, что операционная система Windows работает на этом процессоре Intel, комбинация операционной системы и процессора называется ПЛАТФОРМА. Самой распространенной платформой в мире является Windows, а Intel называется Wintel Platform. Другими популярными платформами являются AMD и Linux, Power PC и Mac OS X.

Теперь со сменой процессора изменится и инструкция по сборке. Например:

  • Инструкция по добавлению в Intel может называться ДОПОЛНЕНИЕ для AMD
  • ИЛИ Math ADD для Power PC

А с изменением операционной системы уровень и характер вызовов на уровне ОС также изменятся.

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

Но компиляторы стоят дорого, и есть вероятность проблем с совместимостью. Поэтому покупка и установка отдельного компилятора для разных ОС и процессоров нецелесообразна. Итак, что может быть альтернативным решением? Введите язык Java.

Как работает виртуальная машина Java?

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

Шаг 1) Код для отображения сложения двух чисел — System.out.println(1+2), и он сохраняется в виде файла .java.

Шаг 2) С помощью компилятора Java код преобразуется в промежуточный код, называемый байт-кодом . На выходе — файл .class.

Шаг 3) Этот код не понимается ни одной платформой, а только виртуальной платформой, называемой виртуальной машиной Java .

Шаг 4) Эта виртуальная машина находится в оперативной памяти вашей операционной системы. Когда виртуальная машина получает этот байт-код, она идентифицирует платформу, на которой работает, и преобразует байт-код в собственный машинный код.

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

«Java — это язык программирования, а также платформа»

Каким образом платформа Java независима?

Как и компилятор C, компилятор Java не создает собственный исполняемый код для конкретной машины. Вместо этого Java создает уникальный формат, называемый байт-кодом. Он выполняется в соответствии с правилами, изложенными в спецификации виртуальной машины. Таким образом, Java является платформо-независимым языком.

Байт-код понятен любой JVM, установленной на любой ОС. Короче говоря, исходный код Java может работать во всех операционных системах.

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

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

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

Использованы материалы сайта http://www.iiikt.narod.ru

Исполнителя характеризуют:

  • среда;
  • элементарные действия;
  • система команд;
  • отказы.

Среда (или обстановка) — это «место обитания» исполнителя.

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

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

Исполнитель ничего не знает о цели алгоритма. Он выполняет все полученные команды , не задавая вопросов «почему» и «зачем» .

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

Рассмотрим процесс управления информационным процессом, в котором в качестве управляемого объекта выбран текст. Другими словами, рассмотрим информационный процесс, связанный с редактированием (изменением состояния) текста.
Во-первых , для того, чтобы преобразовать текст, должен существовать кто-то или что-то, который эти преобразования выполняет. Иными словами, необходим исполнитель этих преобразований.
Во-вторых , процесс преобразования текста необходимо разбить на отдельные операции, которые должны быть записаны в виде отдельных команд исполнителю. Каждый исполнитель обладает определенным набором, системой команд , которые он может выполнить. В процессе редактирования текста возможны различные операции: удаление, копирование, перемещение или замена его фрагментов. Исполнитель редактирования текста должен быть в состоянии выполнить эти операции.
В-третьих , должно быть определено начальное состояние объекта, в данном случае текста, и его требуемое конечное состояние (цель преобразования).
Будем говорить, что информационный процесс, обладающий всеми перечисленными выше свойствами, называется алгоритмом . Исполнитель может выполнить алгоритм, если команды алгоритма входят в систему команд исполнителя.
Например: пользователю необходимо отредактировать текст следующим образом:

  1. Выделить символы с 1 по 15.
  2. Вырезать этот фрагмент и поместить его в буфер.
  3. Установить курсор на позицию после 7-го символа.
  4. Вставить вырезанный фрагмент текста.

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

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

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

Картинка 18 из презентации «Выполнение алгоритмов компьютером» к урокам информатики на тему «Алгоритм»

Размеры: 960 х 720 пикселей, формат: jpg. Чтобы бесплатно скачать картинку для урока информатики, щёлкните по изображению правой кнопкой мышки и нажмите «Сохранить изображение как. ». Для показа картинок на уроке Вы также можете бесплатно скачать презентацию «Выполнение алгоритмов компьютером.ppt» целиком со всеми картинками в zip-архиве. Размер архива — 321 КБ.

Алгоритм

«Выполнение алгоритмов компьютером» — Процессор. Формальный исполнитель Алгоритм и программа Особенности выполнения программы. Особенности выполнения программы. Трансляция. Состав команд ЯМК предложил Джон фон Нейман в 1946г. Этапы выполнения программы. Программа. 1. 0011+0101. Данные. Компьютер. 4. 3.

«Data Mining» — Литература по Data Mining. Пример 2. История Data Mining. Системы обработки экспертных знаний. Кибернетические методы. Для карт Кохонена: карты входов, выходов, другие специфические карты. Преимущества метода. Сложность разработки и эксплуатации приложения Data Mining. Процесс конструирования. Критерии: Точность распознавания Ошибка.

«Алгоритмы в информатике» — Полная форма. Структура ветвления. Приведите, пожалуйста, еще примеры циклического алгоритма. Нет. Линейный. Вспомните: что такое алгоритм? Действие. Структура цикла. Алгоритмы можно описать: словесно; таблично; с помощью программы; графически. Как можно представить алгоритм? Действие N. Циклический.

«Логические выражения» — Содержание. ?. Выражается словами ЕСЛИ…, ТО… Логическое следование или Импликация. Цель. Логическое отрицание. Пример: для сдачи экзамена необходимы знания или везение. Логическое следование. Логические выражения. Запомни знак! 1.Логические 2. Предикаты. утверждения. Обозначается значком.

«Команда алгоритма» — Каждая команда алгоритма должна определять однозначное действие исполнителя. 2.Понятность. 1.Точность. Команда 2. Серия. … Команда n. Команда 1. Линейный алгоритм. Свойства алгоритма. Циклический алгоритм. Алгоритм, в котором команды выполняются последовательно одна за другой, называется … Условие.

«Линейный алгоритм» — От куда мы брали информацию. Мы живём по линейному алгоритму. И то в нас заложено. Мы брали информацию из головы. Линейный алгоритм-. Как механизм в часах: после 1,следует 2, после 2-3, после 3-4 должен работать алгоритм: всё на своём месте: после 1,следует 2, после 2-3 и т. д. Линейный алгоритм в жизни.

Всего в теме 31 презентация

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

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

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

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

Ставится цель превращения компьютера из формального исполнителя в интеллектуального исполнителя.

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

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

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

Алгоритм – это последовательность действий (команд) для достижения цели.

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

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

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

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

Первая вычислительная машина, способная хранить программу в своей памяти, разрабатывалась в 1943-1948 гг. в США под руководством Джона Мочли и Преснера Экерта.

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

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

Согласно фон Нейману, ЭВМ состоит из следующих основных блоков:

Арифметико-логическое устройство, выполняющее арифметические и логические операции;

Устройство управления, которое организует процесс выполнения программ;

Запоминающее устройство, или память, для хранения программ и данных;

Внешние устройства для ввода-вывода информации.

В современных компьютерах это:

Память (запоминающее устройство — ЗУ), состоящая из перенумерованных ячеек;

Процессор, включающий в себя устройство управления (УУ) и арифметико-логическое устройство (АЛУ);

Эти устройства соединены между собой каналами связи, по которым передается информация.

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

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

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

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

сумматор — регистр АЛУ, участвующий в выполнении каждой операции;

счетчик команд — регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды. Он служит для автоматической выборки программы из последовательных ячеек памяти;

регистр команд — регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные — для хранения кодов адресов операндов.

Компьютер является универсальным исполнителем по обработке информации. Значит, для него, как для любого исполнителя, существует определённая система команд (СКИ). Такая система команд для компьютера называется языком машинных команд (ЯМК)

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

Рассмотрим этапы выполнения программы.

Согласно принципам Джона фон Неймана, программа во время её исполнения и данные, которые она обрабатывает, находятся в оперативной памяти (принцип хранимой в памяти программы). Процессор исполняет программу начиная с первой команды и заканчивая последней.

Какое основное свойство оперативной памяти? (энергозависимость, работает с данными, активными в текущий момент времени)

Какие есть особенности в восприятии информации человеком и компьютером? (человек воспринимает информацию с помощью органов чувств, в виде знаков и сигналов, а компьютер воспринимает информацию в виде цифр (0 и 1).)

Как сделать так, чтобы программа, написанная человеком была понятна компьютеру? (нужен способ перевода)

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

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

Сначала программисты, работавшие на компьютерах первого поколения (50-е – 60-е г.г.), составляли программы на ЯМК (в двоичных кодах), но это довольно сложная работа, поэтому для облегчения программирования были созданы языки программирования высокого уровня (ЯПВУ) — это искусственно созданные языки с несколькими десятками слов (операторов) и строгими правилами синтаксиса. Составление программ на ЯПВУ намного проще. Примеры ЯПВУ: Фортран, Паскаль, Бейсик, Си и др.

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

Таким образом, цепочка событий от составления программы на ЯПВУ до получения результатов решения задачи выглядит так

Человек всегда должен понимать ограниченность возможность компьютера как исполнителя, необходимость предусмотреть все тонкости команд, поручаемых компьютеру. Человек разрабатывает алгоритм, записывает его на ЯПВУ и анализирует результаты выполнения программы.

Компьютер является формальным исполнителем программ.

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

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

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

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

Рассмотрим процесс управления информационным процессом, в котором в качестве управляемого объекта выбран текст. Другими словами, рассмотрим информационный процесс, связанный с редактированием (изменением состояния) текста.
Во-первых , для того, чтобы преобразовать текст, должен существовать кто-то или что-то, который эти преобразования выполняет. Иными словами, необходим исполнитель этих преобразований.
Во-вторых , процесс преобразования текста необходимо разбить на отдельные операции, которые должны быть записаны в виде отдельных команд исполнителю. Каждый исполнитель обладает определенным набором, системой команд , которые он может выполнить. В процессе редактирования текста возможны различные операции: удаление, копирование, перемещение или замена его фрагментов. Исполнитель редактирования текста должен быть в состоянии выполнить эти операции.
В-третьих , должно быть определено начальное состояние объекта, в данном случае текста, и его требуемое конечное состояние (цель преобразования).
Будем говорить, что информационный процесс, обладающий всеми перечисленными выше свойствами, называется алгоритмом . Исполнитель может выполнить алгоритм, если команды алгоритма входят в систему команд исполнителя.
Например: пользователю необходимо отредактировать текст следующим образом:

1. Выделить символы с 1 по 15.

2. Вырезать этот фрагмент и поместить его в буфер.

3. Установить курсор на позицию после 7-го символа.

4. Вставить вырезанный фрагмент текста.

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

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

14 Основные понятия алгоритмизации: формальные и неформальные исполнители алгоритмов.

Исполнитель — это некоторый объект (человек, животное, техническое устройство), способный выполнять определенный набор команд.
Команды, которые может выполнить конкретный исполнитель, образуютсистему команд исполнителя (СКИ).

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

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

Как правило, человек выступает в роли неформального исполнителя. Формальными исполнителями являются преимущественно технические устройства. Человек в роли неформального исполнителя сам отвечает за свои действия. За действия формального исполнителя отвечает управляющий им объект.

Управление — это процесс целенаправленного воздействия одних объектов на другие.

Исполнители являются объектами управления. Управлять ими можно, составив для них алгоритм.

Алгоритм — это предназначенное для конкретного исполнителя точное описание последовательности действий, направленных на решение поставленной задачи.

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

15 Алгоритмические конструкции: линейная, разветвление, циклы

Понять , что компьютер — это формальный исполнитель программ.

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

Понять

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

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

Объект можно назвать исполнителем алгоритма, если он обладает следующими свойствами:

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

Компьютер никогда не задает вопросов «Почему?» и «Зачем?». Он не отказывается выполнять команды, которые входят в его систему команд. Поэтому компьютер называют формальным исполнителем алгоритмов.

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

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

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

Универсальным исполнителем компьютер можно назвать ещё и потому, что его могут использовать разные люди: математики, писатели, медики, инженеры, учителя, студенты, школьники и даже маленькие дети. Всё это возможно, так как в памяти компьютера много разных программ.

Одни программы управляют самим компьютером. Это системные программы. Другие программы помогают создавать и редактировать информационные объекты (тексты, рисунки, схемы, числа и другое). Такие программы называются прикладными. Есть и другие виды программ.

Выполни

План действий

  1. Сравни исполнителя-человека и исполнитель-компьютер с помощью таблицы.
  1. Составь короткий рассказ по результатам анализа этой таблицы.
  2. Оформи таблицу и рассказ в текстовом редакторе.
  3. Сохрани файл под именем «Исполнители» в папке «Моё портфолио».

Главное

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

Знать

  1. Чем отличается исполнитель-человек от исполнителя-компьютера?
  2. Может ли компьютер обрабатывать данные, если в его памяти нет программ?
  3. Благодаря каким устройствам компьютер может исполнять программы?
  4. Исполнит ли компьютер программу, написанную на русском языке? Почему?
  5. Почему компьютер называют формальным исполнителем?

Уметь

Выполни задания в рабочей тетради № 2.

Выполни на компьютере задания к параграфу из раздела УМЕТЬ компакт-диска.

Прочитай на досуге в книге «Расширь свой кругозор» текст «Области применения компьютера».

Что такое ямк в информатике

Новый школьный учебник информатики

Согласно принципу Неймана — принципу хранимой в памяти программы, наряду с данными в оперативную память компьютера помещается программа управления его работой. Способ представления программы «понятный» процессору ЭВМ называется языком машинных команд – ЯМК. Программа на ЯМК реализует алгоритм решения вычислительной задачи на компьютере-исполнителе. У любого исполнителя есть своя СКИ. Опишем систему команд УК «НЕЙМАН».

  • какую операцию выполнить?
  • где находятся операнды?
  • куда поместить результат операции?
  • какую команду выполнять следующей?

В УК «Нейман» машинные команды имеют трехадресную структуру (формат). Это значит, что ячейка, в которой храниться команда, делится на 4 части (по одному байту на каждую часть). Будем их обозначать следующим образом: КОП — код операции, А1 — адрес первого операнда, А2 — адрес второго операнда, А3 — адрес результата.

КОП А1 А2 А3

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

Вот пример команды сложения двух чисел:

КОП А1 А2 А3
014448

где 01 — это код операции сложения;
44 — адрес первого слагаемого;
48 — адрес второго слагаемого;
4С — адрес ячейки, в которую помещается сумма.

Для всех арифметических операций ответ на вопрос «Какую команду выполнять следующей?» всегда одинаковый: следующей выполняется команда, находящаяся в следующей ячейке.

Записывать команды будем в шестнадцатеричной форме. В памяти ЭВМ команда имеет двоичный вид. Используя связь между двоичной и шестнадцатеричной системами, легко получить внутреннее представление приведенной команды.

КОПА1А2А3
00000001010001000100100001001100

В табл.1 содержится система команд УК «НЕЙМАН».

Запись (A1) + (A2) ==> A3 надо понимать так: содержимое ячейки с адресом A1 сложить с содержимым ячейки с адресом A2 и результат записать в ячейку A3; (A1) ==> A3 — содержимое ячейки A1 занести (скопировать) в ячейку A3.

КОПОперация Пояснение
00Пересылка (A1) ==> A3
01Сложение (A1) + (A2) ==> A3
02Вычитание (A1) — (A2) ==> A3
03Умножение (A1) x (A2) ==> A3
04Деление нацело (A1) div (A2) ==> A3 целая часть от деления
05Получение остатка
от деления нацело
(A1) mod (A2) ==> A3
остаток от деления нацело
0AУсловный переход Переход к ячейке A3 по регистру-признаку результата W=1
0BБезусловный переход Безусловный переход к ячейке A3
77Останов Прекращение выполнения программы
FFПустая команда При выполнении пропускается

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

Пусть, например, требуется вычислить выражение
( А + B ) x C.

Под величины А, В, С выделим следующие ячейки памяти:
А — 20, В — 24, С — 28.
Результат вычисления выражения поместим в ячейку 2С. Вот фрагмент программы, решающей эту задачу:

Адрес КОПА1 А2А3 Пояснение
0C 01 20 24 2C (20) + (24) ==> 2C A+B
10 03 2C 28 2C (2C) x (28) => 2C (A+B) x C

В графе «Адрес» указываются номера ячеек, в которых располагаются команды. Команды этой программы выполняются в «естественном порядке» возрастания адресов: сначала , затем 10.

Ячейке значение присваивается дважды: сначала результат суммирования, затем — умножения. Первый результат — промежуточный, второй — окончательный.

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

Исходные данные задаются вводом. Ввод — это занесение данных в оперативную память через устройства ввода.

Устройством ввода на УК «НЕЙМАН» является клавиатура.

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

Вывод делает результаты выполнения программы обозримыми для пользователя. Устройством вывода на УК «НЕЙМАН» является дисплей.

Договоримся о следующем способе организации ввода-вывода. С клавиатурой и дисплеем связана последняя ячейка памяти УК «НЕЙМАН» — ячейка FC . Будем называть ее буферной ячейкой ввода-вывода .

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

В УК «НЕЙМАН» ячейка FC выполняет роль своеобразной видеопамяти. На индикаторе пользователь всегда видит содержимое ячейки FC.

Структура команды пересылки следующая:

00А1 — —А3

Эта команда, фактически, двухадресная. Содержимое второго адреса (А2) не влияет на ее исполнение (в дальнейшем на месте второго адреса будем писать нули). В результате выполнения команды пересылки значение в ячейке А3 становится равным (А1). При этом значение в ячейке А1 не меняется. Иначе это называется так: ячейке А3 присваивается значение ячейки А1.

После выполнения команды 00 10 00 20

В рассмотренной задаче на дисплей нужно вывести результат вычислений, полученный в ячейке . Для этого его следует присвоить ячейке FC. Значит, команда вывода будет такой: 00 2С 00 FC.

А как запрограммировать ввод значения А в ячейку 20? Делается это так: 00 FC 00 20.

Процессор, обнаружив команду, у которой КОП=00 и А1=FC, прерывает работу и ждет действий пользователя. Пользователь набирает на клавиатуре вводимое число. Это число заносится в ячейку FC и, одновременно, высвечивается на дисплее. Затем пользователь нажимает клавишу <ВВОД>. Процессор выполняет команду пересылки из ячейки FC в ячейку 20. Ввод завершился, процессор переходит к выполнению следующей команды.

Запишем команды ввода и вывода в общем виде:

00 FC — A3 — ввод числа в ячейку А3
00 А1 — FC — вывод числа из ячейки А1

А теперь запишем программу вычисления выражения (А+В)С в окончательном виде. Договоримся, что любая программа будет занимать ячейки в начале памяти. Первая команда всегда находится в ячейке 00.

Адрес КОП А1А2A3 Пояснения
00 00 FC 00 20 ввод А
04 00 FC 00 24 ввод В
08 00 FC 00 28 ввод С
0C 01 20 24 2C A+B
10 03 2C 28 2C (A+B)C
14 00 2C 00 FC вывод результата
18 77 00 00 00 Стоп

В ячейке 18 находится команда останова с кодом операции 77. Результат ее выполнения — остановка работы машины. Содержимое адресной части в этой команде не имеет значения.

Предположим, что по этой программе мы хотим вычислить выражение при А=26, В=74, С=3.

Как же происходит исполнение программы? Процессор начинает исполнять программу с команды, находящейся в ячейке 00. В нашей программе это команда ввода А. ЭВМ останавливается и ждет действий пользователя. Пользователь набирает на клавиатуре шестнадцатеричный код числа 26: 00 00 00 1А <ВВОД>.

После нажатия клавиши <ВВОД> число 26 введено в ячейку 20. Следующая команда требует ввода значения В. Пользователь вводит: 00 00 00 4А <ВВОД>.

Последним вводится значение С: 00 00 00 03 <ВВОД>.

Следующие команды программы выполняются автоматически. После выполнения команды вывода (ячейка 14) происходит остановка. Она нужна для того, чтобы пользователь успел разглядеть результат на дисплее, если в программе несколько команд вывода. Для введенных значений исходных данных результат на дисплее будет таким: 00 00 01 2С.

Программа продолжит исполнение после нажатия клавиши <ВВОД>. Работа программы завершится по команде останова.

Полученный результат — это шестнадцатеричная форма внутреннего представления. Чтобы получить ответ в десятичной системе, нужно выполнить перевод 16 ==> 10. 12С 16 = 300 10

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *