Конспект лекций по предмету "Экономическая теория"


Основы алгоритмизации и программирования

Преподаватель: Ольга Юрьевна

Основы алгоритмизации и программирования

Литература: В.И. Юров «Ассемблер. Учебник для вузов»
Н.И. Голубь «Искусство программирования на Ассемблере. Лекции и упражнения»
В.Н. Пильщиков «Программирование на языке ассемблера IBM PC»

«Развитие языков программирования» Реферат.

Этапы развития ЭВМ
Три этапа развития ЭВМ:
1) Период ручной докомпьютерной эпохи. Этот период начался на заре человеческой цивилизации. Фиксация результатов счёта производилась различными способами: пальцевый счёт, нанесение засечек, счётные палочки. Позднее появились приборы, использующие позиционные системы счисления. К ним относят «русский абак», русские, японские, китайские счёты. Со счёт начинается развитие цифровых устройств.
2) Механический – развитие механики в 17-ом веке стало предпосылкой вычислительных устройств и приборов, использующий механический принцип вычисления, обеспечивающий перенос старшего разряда. В 19-ом веке английский механик Ч. Бэббидж выдвинул идею создания программно-управляемой счётной машины, имеющей арифметическое устройство, устройство вывода (печати) и ввода. Первая такая машина работала на паровом двигателе (16-цифровой калькулятор). Главным достижением этой эпохи можно считать изобретение арифмометра.
3) Электромеханический этап охватывает около 60 лет. Начинается от 1-го табулятора Холлерита до 1-ой ЭВМ ENIAC (1945 год). Предпосылками для создания проектов такого типа явились необходимость проведения массовых расчетов и развитие прикладной электротехники. Классическим типом средств этого этапа были счетно-аналитические комплексы, предназначенные для обработки информации на перфокарточных носителях.
Заключительный этап характеризуется развитием вычислительной техники в виде сложных релейных и релейно-механических систем с программным управлением, характеризующихся алгоритмической универсальностью и способных выполнять сложные научно-технические вычисления в автоматическом режиме, со скоростями, на порядок превышающими скорость работы арифмометров с электроприводом.

1-4 поколение ЭВМ





Годы применения
1946-1958
1958-1964
1964-1972
1972-наше время
Основной элемент
эл. лампа, реле
Транзистор
ИС
МИС
БИС
СБИС
Кол-во ЭВМ в мире
десятки
тысячи
десятки тысяч
Миллионы
Быстродействие (операций в секунду)
103-104
104-106
105-107
106-108
Носитель информации
перфокарта, перфолента
магнитная лента
диск
гибкий и лазерный диск
Размеры ЭВМ
большие, значительно габаритные
значительно меньшие габариты
мини-ЭВМ, в 150 раз меньше 2-го поколения
микро-ЭВМ
30 см3<

На создание ЭНИ ушло ушло 200 тысяч человеко/часов.
Комплекс включал 17468 ламп и их было 16 различных видов, 7200 кремниевых диодов, 1500 реле, 70 000 резисторов, 10000 конденсаторов. Его вес 27 тонн, объём памяти – 20 число слов. Потребляемая мощность 174 кВт

Архитектура ЭВМ
Архитектура ЭВМ – это абстрактное представление ЭВМ, которое отражает её структурную схемо-техническую и логическую организацию.
Что входит в архитектуре ЭВМ:
1) Структура ЭВМ;
2) Средства и способы доступа к элементам структурной схемы ЭВМ;
3) Организация и разрядность интерфейсов ЭВМ;
4) Набор и доступность регистров;
5) Организация и способы адресации памяти;
6) Способы представления и форматов данных ЭВМ;
7) Набор машинных команд ЭВМ;
8) Форматы машинных команд;
9) Правила обработки внештатной ситуации;

Понятие архитектуры ЭВМ – иерархическая.
На сегодняшний день общие архитектурные свойства большинства современных компьютеров попадают под понятие фон-Неймоновской архитектуры. Программирование осуществлялось способом коммутирования. Все логические схемы программировались (переключались) вручную. Использовалась десятичная логика. Фон-Нейман предложил схему ЭВМ с программой в памяти и двоичной логикой вместо десятичной.
АЛУ (аккумулятор):
Оперативная память; Блок управления;
Устройство ввода; Устройство вывода;

Основные принципы работы машины фон-Неймана:
1) Линейное пространство памяти;
2) Принцип хранимой информации (код программы и её данные хранятся в одном и том же адресном пространстве)
3) Принцип микропрограммирования;
4) Последовательное выполнение программ;
5) Отсутствие разницы между командами и данными в памяти;
6) Безразличие к назначению данных;

32-битная Intel-архитектура
Процессоры Pentium, их хар-ки:
1) Двухпотоковая суперскалярная организация, допускающая параллельное выполнение пары простых команд;
2) Наличие двух независимых, двух входовых кэш для команд и для данных, обеспечивающих выборку данных для двух операций в каждом такте;
3) Динамическое прогнозирование перехода;
4) Двоичная совместимость с существующими процессорами этого семейства;

Микроархитектура P6
- это суперскалярная суперконвейерная архитектура. Применяется в основе процессоров Pentium Pro, Pentium 2. 3. Celeron

Набор регистров
Регистрами называются области высокоскоростной памяти, расположенные внутри процессора в непосредственной близости от его исполнительного ядра.
Регистры делятся на 2 группы
1) Пользовательские регистры:
- регистры общего назначения EAX/AX/AH/AL, EBX/BX/BH/BL, EDX/DX/DH/DL, ECX/CX/CH/CL, EBP/BP, ESI/SI, EDI/DI, ESP/SP; Предназначены для хранения данных и адресов.
- сегментные регистры CS, DS, SS, ES, FS, GS; Используются для хранения адресов сегментов памяти
- регистры сопроцессора ST(0), ST(1), ST(2), ST(3), ST(4), ST(5), ST(6), ST(7); Предназначены для написания программ использующих тип данных с плавающей точкой.
- целочисленные регистры MMX-расширения MMXO, MMXI, MMX2, MMX3, MMX4, MMX5, MMX6, MMX7;
- регистры XMM-расширения с плавающей точкой XMMO, XMM1, XMM2, XMM3, XMM4, XMM5, XMM6, XMM7;
- регистры состояния и управления (регистр флагов E FLAGS/FLAGS и регистр указатель команды EIP/IP); Содержит информацию о состоянии процессора исполняемой программы и позволяет изменить это состояние
2) Системные регистры:
- управляющие регистры CRO…CR4; Определяют режим работы процессоры и характеристики текущей исполняемой задачи
- регистры управления памятью GDTR, IDTR, LDTR, TR; Используется в защищенном режиме работы процессора для локализации управляющих структур этого режима
- отладочные регистры DRO…DR7; Предназначены для мониторинга и управления различными аспектами отладки.
- регистры типов областей памяти MTRR; Используются для аппаратного управления кешированием в целях назначения соответствующих свойств областям памяти
- машинно-зависимые регистры MSR; Используются для управления процессором, контролем за его производительностью и получением информации об его ошибках.


Организация памяти

Диапазон значений физических адресов – зависит от разрядности шины адреса процессора. Соответственно этот диапазон 0..236 – 1. Механизм управления… Этот механизм позволяет обеспечить:
1) компактность хранения адреса в машинной команде;


Основное применение организации виртуальной памяти

Различают 3 модели организации этой памяти:
1) сегментированная модель памяти реального режима;
2) сегментированная модель защищенного режима;


Регистры общего назначения

операндов логических и арифметических операций;
компонентов адреса;
указателей на ячейки памяти.


Сегментные регистры

Сегмент кода содержит команды программы. Для доступа к этому сегменту служит регистр сегмента кода (Code Segment register) CS. Он содержит адрес… Сегмент данных содержит обрабатываемые программой данные. Для доступа к… Сегмент стека представляет собой область памяти, называемую стеком. Работу со стеком процессор организует по…

Регистры состояния и управления

регистр-указатель команд EIP/IP;
регистр флагов ЕFLAGS/FLAGS.
С помощью этих регистров можно также ограниченным образом управлять состоянием процессора.


Формат команд

Типовая команда, в общем случае, должна указывать:
1) код подлежащей выполнению операции;
2) адреса исходных данных (операндов), над которыми выполняется операция;


Обработка прерываний

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


К теме о регистрах 2.3 Регистры состояния и управления

регистр-указатель команд EIP/IP;
регистр флагов ЕFLAGS/FLAGS.
С помощью этих регистров можно также ограниченным образом управлять состоянием процессора.


Жизненный цикл программы

1. Постановка и формулировка задачи:
изучение предметной области и сбор материала в проблемно-ориентированном… определение назначения программы, выработка требований к ней и представление требований, если возможно, в…

Процесс разработки программы


Рис. 6.1. Схема процесса разработки программы на ассемблере
Для выполнения остальных этапов разработки требуются специализированные программные средства из пакета MASM или TASM.…

Лекция 6.

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

Лекция 7.

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

Лекция 8.

Машинная команда представляет собой закодированное по определенным правилам указание микропроцессору на выполнение некоторой операции или действия.… 1) что делать?
2) объекты, над которыми нужно что-то делать (эти элементы называются операндами);


Префиксы.

1) Префикс замены сегмента. В явной форме указывает, какой сегментный регистр используется в данной команде для адресации стека или данных. Префикс… 2) Префикс разрядности адреса уточняет разрядность адреса (32 или… 3) Префикс разрядности операнда аналогичен префиксу разрядности адреса, но указывает на разрядность операндов (32 или…

Код операции.

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

Байт режима адресации modr/m.

1) поле mod определяет количество байт, занимаемых в команде адресом операнда;
2) поле reg/коп определяет либо регистр, находящийся в команде на месте… 3) поле r/m используется совместно с полем mod и определяет либо регистр, находящийся в команде на месте первого…

Поле смещения в команде.

6. Поле непосредственного операнда. Необязательное поле, представляющее собой 8-, 16– или 32-разрядный непосредственный операнд. Наличие этого поля,…
2. Способы задания операндов


Прямая адресация

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

Косвенная базовая (регистровая) адресация


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

Лекция 9.

Система команд Pentium 4, последнего на сегодняшний день процессора архитектуры IA-32, включает в себя около 330 мнемоник машинных команд. Если же… команды общего назначения, исполняемые целочисленным устройством, в том числе… команды сопроцессора;


Команды общего назначения

Классификация целочисленных машинных команд приведена на рис.9.1.

Рис. 9.1. Функциональная классификация целочисленных машинных команд


Команды сопроцессора

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


MMX-расширения

Расширение MMX использует новые типы упакованных данных: упакованные байты (восемь байт), упакованные слова (четыре слова), упакованные двойные…

XMM-расширения

ХММ-расширение является продолжением политики Intel на ввод в архитек­туру процессоров средств, повышающих эффективность вычислений на больших… Основной тип данных ХММ-расширения — число с плавающей запятой в ко­ротком…

Лекция 10.

Алгоритм, представляет собой формализованное описание логики работы программы. Способы такой формализации весьма разнятся: от текстового описания… линейной – все действия выполняются поочередно, друг за другом;
нелинейной – в алгоритме есть точки ветвления, в которых должно приниматься решение о месте, с которого программа…

Работа со стеком

Для работы со стеком предназначены три регистра:
SS — регистр сегмента стека;
SP/ESP — регистр указателя стека;


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем конспект самостоятельно:
! Как написать конспект Как правильно подойти к написанию чтобы быстро и информативно все зафиксировать.