В. Г. Баула Введение в архитектуру ЭВМ и системы программирования





НазваниеВ. Г. Баула Введение в архитектуру ЭВМ и системы программирования
страница6/46
Дата публикации04.09.2013
Размер3.44 Mb.
ТипИзложение
100-bal.ru > Информатика > Изложение
1   2   3   4   5   6   7   8   9   ...   46

3.3. Формальное описание учебной машины


При описании архитектуры учебной ЭВМ на естественном языке многие вопросы остались нераскрытыми. Что, например, будет после выполнения команды из ячейки с адресом 511? Какое значение после нажатия кнопки ПУСК имеют ячейки, расположенные вне введённой программы? Как представляются целые и вещественные числа? Для ответа на почти все такие вопросы мы приведём формальное описание нашей учебной машины. В качестве метаязыка мы будем использовать Турбо-Паскаль, на котором Вы работаете. Другими словами, мы напишем программу, выполнение которой моделирует работу нашей учебной машины, т.е. наша машина, по определению, работает почти так же, как и написанная нами программа на Паскале.

Ниже приведена реализация учебной машины на языке Турбо-Паскаль:
program УМ_3(input, output);

const

N = 511;

type

Address = 0..N;

Tag = (kom, int, fl); {В машинном слове может хранится команда, целое

или вещественное число}

Komanda = packed record

KOP: 0..31;

A1, A2, A3: Address;

end;

Slovo = packed record

case Tag of

kom: (k: Komanda);

int: (i: LongInt)

fl: (f: Single);

end

Memory = array[0..N] of Slovo;

var

Mem: Memory;

S, R1, R2: Slovo; {Регистры АЛУ}

RK: Komanda; {Регистр команд}

RA: Address; {Счётчик адреса}

Om: 0..2; {Регистр w}

Err: Boolean;

begin

Input_Program; {Эта процедура должна вводить текст программы с устройства

ввода в память по кнопке ПУСК}

Om := 0; Err := False; RA := 1; {Начальная установка регистров}

with RK do

repeat {Основной цикл выполнения команд}

RK := Mem[RA].k;

RA := (RA+1) mod (N+1);

case KOP of {Анализ кода операции}

00: { ПЕР }

begin R1 := Mem[A3]; Mem[A1] := R1 end;

01: { СЛВ }

begin

R1 := Mem[A2]; R2 := Mem[A3]; S.f := R1.f + R2.f;

if S.f = 0.0 then OM := 0 else

if S.f < 0.0 then OM := 1 else OM := 2;

Mem[A1] := S; { Err := ? }

end;

09: { БЕЗ }

RA := A2;

24: { МОД }

begin

R1 := Mem[A2]; R2 := Mem[A3];

if R2.i = 0 then Err := True else begin

S.i := R1.i mod R2.i; Mem[A1] := S;

if S.i = 0 then OM := 0 else

if S.i < 0 then OM := 1 else OM := 2;

end

end;

13: { СТОП } ;

{ Реализация остальных кодов операций }

else

Err := True;

end; { case }

until Err or (KOP = 31)

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

Наша программа ведёт себя почти так же, как учебная машина. Одно из немногих мест, где это поведение расходится, показано в тексте программы, например, при реализации команды сложения вещественных чисел. Программа на Паскале при переполнении (когда результат сложения не помещается в переменную S) производит аварийное завершение программы, а учебная машина просто присваивает регистру Err значение 1. Наше формальное описание отвечает и на вопрос о том, как в учебной машине представляются целые и вещественные числа: точно так же, как в переменных на Паскале. Это представление мы изучим в нашем курсе несколько позже.

Заметим также, что память учебной машины как бы замкнута в кольцо: после выполнения команды из ячейки с адресом 511 (если это не команда перехода) следующая команда будет выполняться из ячейки с адресом ноль. Такая организация памяти типична для многих современных ЭВМ.
1   2   3   4   5   6   7   8   9   ...   46

Похожие:

В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПлан введение основные блоки ibm pc дополнительные устройства логическое...
Эвм и мини ЭВМ. Это стало предметом серьезного беспокойства фирмы ibm (International Bussines Machines Corporation) ведущей компании...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconКонспект лекций по курсу "Микропроцессоры и микро-эвм в Персональной...
Целью настоящего курса является дать понятие о микропроцессорах и однокристальных микро-эвм, области их применения, дать основы функционирования...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconРабочая программа учебной дисциплины «программные средства пэвм»
Эвм и информационных систем, состава и структуры программного обеспечения, а также получение практических навыков работы в среде...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconРабочая программа учебной дисциплины «программные средства пэвм»
Эвм и информационных систем, состава и структуры программного обеспечения, а также получение практических навыков работы в среде...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconРабочая программа учебной дисциплины «средства создания и исполнения программ на пк»
Эвм и информационных систем, состава и структуры программного обеспечения, а также получение практических навыков работы в среде...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПрограмма по формированию навыков безопасного поведения на дорогах...
Методические указания предназначены для студентов специальностей ”эвм и системы“, “Автоматизированные системы обработки информации...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПонятие программы для ЭВМ
Эвм, и порождаемые ею аудиовизуальные отображения. Программ для ЭВМ (в том числе на операционные системы и программные комплексы),...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconУчебно-тематический план по программе «Основы программирования» (2...
Введение. Алгоритм. Программа. Язык программирования Паскаль. Техника безопасности
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования icon«архитектура ЭВМ и систем» Новосибирск сгга содержание
Эвм различных классов; параллельные системы понятие о многомашинных и многопроцессорных вычислительных системах; матричные и ассоциативные...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПояснительная записка: Цели и задачи дисциплины. Дисциплина «Языки программирования»
Ступников А. А. Языки программирования. Учебно-методический комплекс. Рабочая программа для студентов очной формы обучения, направления...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования icon«Архитектура эвм»
Цель дисциплины: формирование систематизированных знаний в области архитектуры компьютера, организации компьютерных систем, программирования...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconКурсовой проект по дисциплине «Системы программирования и операционные системы»
Резидентный обработчик прерываний от клавиатуры с подключением до системного обработчика
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconТехническое обеспечение кит реферат
Сша и предназначалась для баллистических расчётов при стрельбе. Первая отечественная цифровая ЭВМ «мэсм» создана в 1950 г. Ход развития...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПрограмма по формированию навыков безопасного поведения на дорогах...
Программы: «Основы алгоритмизации и программирования» и «Арифметические основы эвм»
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconРабочая программа дисциплины «программирование и алгоритмизация»
Автоматизация технологических процессов и производств”, с основами алгоритмизации, основными понятиями программирования, несколькими...
В. Г. Баула Введение в архитектуру ЭВМ и системы программирования iconПлан введение сущность объектно-ориентированного подхода к программированию...
Первый объектно-ориентированный язык программирования Simula 67 был разработан в конце 60-х годов в Норвегии. Авторы этого языка...


Школьные материалы


При копировании материала укажите ссылку © 2013
контакты
100-bal.ru
Поиск