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

Содержание

Слайд 2

Многоуровневая компьютерная организация Машинный язык – минимальный набор примитивных команд, реализуемых

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

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

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

Многоуровневая компьютерная организация Многоуровневая компьютерная организация – построению ряда уровней абстракций,

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

Многоуровневая компьютерная организация – построению ряда уровней абстракций, каждая

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

Языки, уровни и виртуальные машины Чтобы сделать взаимодействие с компьютером проще

Языки, уровни и виртуальные машины

Чтобы сделать взаимодействие с компьютером проще для

человека, формируется новый набор команд, более удобный, чем встроенные машинные команды, = язык Я1, а машинный язык = Я0
Компьютер может исполнять только программы, написанные на машинном языке Я0.
Два способа решения проблемы борьбы со сложностью отличаются тем, каким образом компьютер будет исполнять программы, написанные на языке Я1.
Первый способ исполнения программы, написанной на языке Я1, подразумевает замену каждой команды Я1 эквивалентным набором команд на языке Я0 – трансляция.
Слайд 5

Языки, уровни и виртуальные машины Второй способ создание на языке Я0

Языки, уровни и виртуальные машины

Второй способ создание на языке Я0 программы,

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

Языки, уровни и виртуальные машины

Языки, уровни и виртуальные машины

Слайд 7

Языки, уровни и виртуальные машины Трансляция и интерпретация целесообразны лишь в

Языки, уровни и виртуальные машины

Трансляция и интерпретация целесообразны лишь в том

случае, если языки Я0 и Я1 не слишком отличаются друг от друга. Язык Я1 хотя и лучше, чем Я0, но все же далек от идеала.
Решение проблемы – создание еще одного набора команд, которые в большей степени ориентированы на человека и в меньшей степени на компьютер, чем Я1.
Этот набор команд формирует язык Я2, а виртуальная машина – М2. Программы могут либо транслироваться на язык Я1, либо исполняться интерпретатором, написанным на языке Я1.
Слайд 8

Языки, уровни и виртуальные машины Изобретение ряда языков, каждый из которых

Языки, уровни и виртуальные машины

Изобретение ряда языков, каждый из которых более

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