Введение в архитектуру ЭВМ
2024/25 учебный год г., Институт математики и информационных технологий,II курс
3 семестр
Направления бакалавриата:
- 01.03.02 - Прикладная математика и информатика
- Богоявленский Юрий Анатольевич
<ybgv@cs.petrsu.ru>
Из интервью Ю. А. Богоявлекнского к 75-летию ПетрГУ
- Богоявленская Ольга Юрьевна <olbgvl@cs.petrsu.ru>
- Чистяков Дмитрий Борисович <chistyak@cs.petrsu.ru>
Новости и объявления
Материалы лекций
- 02 сентября. Вводная лекция. Задача 1. Текст, видео, пример в отладчике.
- 09 сентября. Регистры. Системы счисления, порядок байтов, символьные имена. Регистры (видео). Текст, видео.
- 16 сентября. Коды символов. Системные вызовы. Файлы stdin, stdout. Задача 3. Текст, видео, пример в отладчике 1, пример в отладчике 2.
- 23 сентября. Машинная арифметика. Дополнительный код. Система команд. Программа 2to10. Текст, видео, пример в отладчике.
- 30 сентября. Типы данных. Плавающая точка. Команды SIMD. Переполнение. Директивы определения данных. Текст, видео, пример в отладчике, демонстрация работы SIMD.
- 07 октября. Структура команды. Смещение. Перемещение. Режимы адресации. Текст, видео, пример в отладчике
- 14 октября. Стек. Функции, введение. Текст, видео, пример в отладчике. функции видео.
- 21 октября. Поведение стека при вызовах функций по соглашениям ABI. Текст, видео.
- 28 октября. Программа демонстрации соглашений о вызовах ABI. Текст, видео, пример в отладчике.
- 11 ноября. Раздельная трансляция и внешние символьные имена. Текст, видео, make, пример в отладчике.
- 18 ноября. Совместное использование функций на языках ассемблера и C. Текст.
- Вызывающая программа на С. Видео примера в отладчике.
- Функция Read_Sym на C. Видео примера в отладчике.
- Использование scanf и prinf. Видео демонстрации. - 25 ноября. Обзор библиотеки glibc. Текст. Видео.
- 2 декабря. Абстракции в информатике. Применение языка ассемблера. Текст. Видео. ';
Алиева | Анжелика | Мушвиговна | 203 | Зачтено |
Анисимова | Алиса | Степановна | 203 | Зачтено |
Богданова | Анфиса | Павловна | 203 | Зачтено |
Гапанович | Кирилл | Любомирович | 203 | Зачтено - - |
Героева | Ариана | Яновна | 203 | Зачтено - - |
Дорошин | Александр | Павлович | 203 | Зачтено - - |
Зелинский | Виктор | Павлович | 203 | Зачтено |
Калабин | Николай | Владимирович | 203 | Автомат |
Квашнин | Семён | Алексеевич | 203 | Автомат |
Комаров | Максим | Витальевич | 203 | Зачтено |
Коновалов | Август | Владимирович | 203 | Зачтено - - |
Никитина | Карина | Сергеевна | 203 | Зачтено - - |
Олюшкин | Иван | Владиславович | 203 | Зачтено |
Осипов | Егор | Алексеевич | 203 | Не зачтено |
Петрушин | Артем | Андреевич | 203 | Зачтено |
Полиновская | Арина | Евгеньевна | 203 | Автомат |
Прокопьев | Алексей | Алексеевич | 203 | Автомат |
Прокофьев | Денис | Юрьевич | 203 | Зачтено |
Соловей | Михаил | Олегович | 203 | Не зачтено |
Твердохлебов | Никита | Сергеевич | 203 | Зачтено |
Товкун | Дмитрий | Иванович | 203 | Автомат |
Турбин | Егор | Александрович | 203 | Зачтено - - |
Черкавская | Анна | Алексеевна | 203 | Зачтено |
Чернобай | Богдан | Игоревич | 203 | Зачтено |
Шестак | Эдуард | Владимирович | 203 | Зачтено |
Шолохова | Ксения | Кимовна | 203 | Зачтено |
Бедорев | Александр | Алексеевич | 204 | Зачтено - - |
Дондин | Мирон | Максимович | 204 | Зачтено |
Ефимова | Дарья | Александровна | 204 | Зачтено - - |
Загороднев | Михаил | Алексеевич | 204 | Зачтено - - |
Инюшин | Никита | Викторович | 204 | Зачтено |
Карапетян | Арсен | Каренович | 204 | Зачтено |
Нескоромный | Егор | Олегович | 204 | Зачтено |
Саволайнен | Владимир | Андреевич | 204 | Автомат |
Самбук | Владислав | Олегович | 204 | Зачтено - - |
Самохина | София | Павловна | 204 | Зачтено |
Урняжев | Максим | Сергеевич | 204 | Зачтено |
Шабарковский | Матвей | Андреевич | 204 | Зачтено |
Шарупич | Алиса | Владимировна | 204 | Зачтено - - |
Список заданий и контрольные сроки сдачи
Регламентирующие документы
- Вопросы к зачету и экзамену
- Пример билета
- РПД Введение в архитектуру ЭВМ, ПМиИ 2 курс
- РПД Введение в архитектуру ЭВМ, ИСиТ 1 курс
- РПД Введение в архитектуру ЭВМ, ПИ 1 курс
Инструкции по организации работы
- Запуск отладчика KDBG из Windows: Xming или VcXsrv
- Краткая инструкция по работе с отладчиком gdb, видео инструкция по работе с отладчиком gdb
Список основной литературы
Учебно-методические материалы
- Загрузочный образ GNU/Linux для студентов в формате OVA для VirtualBox
- Место архитектурной культуры в информатике
- Ю. А. Богоявленский Дисциплина «Введение в архитектуру ЭВМ» — минималистский подход
- Работа с GNU Assembler, Emacs и DDD
- Using as (русская версия / локально)
- Отладка с помощью GDB
- KDbg - User's Manual
Примеры
- Демонстрация работы счетчиков размещения, свойств меток и абсолютных символьных имен (файлы Sym-names.S и my-macro, Makefile)
- Пример организации макрокоманд (файлы m.S и my-macro, Makefile)
- Пример получения десятичных цифр двоичного числа (2to10.S,my-macro,Makefile)
- Примеры директив определения данных и обнаружение переполнения, Makefile, my-macro
- Демонстрация режимов адресации, my-macro, Makefile
- Пример работы со стеком, my-macro, Makefile
- Пример организации функций. Исходный текст, my-macro, Makefile
- Пример вызова из программы на языке С функций на языке ассемблера ( Read_Sym.S, Trans_Sym.S, call-as.c , Makefile)
- Простой пример вызова функции на языке C из функции на языке ассемблера ( main.s, func.c, Makefile)
- Пример вызова функции Read_Sym на языке C из функции main на языке ассемблера ( main.S, Read_Sym.c, Trans_Sym.S, my-macro , Makefile)
- Пример использования библиотеки libc, вызовы scanf и printf (call-libc.S, Makefile, используйте файл my-macro из задания N 3)
- Пример использования макрокоманд для вызова scanf и printf ( call-libc-macro.S, my-macro, libc-macro, Makefile)
- Пример раздельной трансляции (main.S, Read_Sym.S, Trans_Sym.S, my-macro, Makefile)
Иллюстрации
- Эвм Урал-1, внешний вид (Политехнический музей, Москва, фото Ю.А. Богоявленского)
- Эвм Урал-1, краткая справка
- Пирамида виртуальных машин
- Архитектура IA-32 Intel
- Архитектурные типы данных (рис. 1)
- Архитектурные типы данных (рис. 2)
- Схема организации функций
- Работа стека в примере "Организация функций"
- Плоская (Flat) модель памяти
Список дополнительной литературы
- Реализация glibc cтандартной библиотеки языка Си
- Стандартная библиотека языка Си (libc) wikipedia
- Системные вызовы (рус.)
- Системные вызовы (англ.)
- Использование GNU ассемблера as
- Johnathan Bartlett. Programming from the Ground Up (локальная копия)
- Blum R. Professional Assembly Language
- От C к Ассемблеру
- Солашения о связях для разных платформ
- Прикладной двоичный интерфейс (ABI - Application Binary Interface) ОС Linux для i386, в том числе для языка C
Руководство от Intel
- Базовая архитектура
- Описание команд A-M
- Описание команд N-Z
- Руководство Intel для разработчиков ПО
- Обновленные версии описания базовой архитектуры, системы
команд и инструкций по системному программированию одним документом (Volume 1, 2A, 2B, 2C, 3A, 3B и 3C).
Структура документа:Volume 1: Describes the architecture and programming environment of processors supporting IA-32 and Intel 64 architectures.
Volume 2: Includes the full instruction set reference, A-Z, in one volume. Describes the format of the instruction and provides reference pages for instructions.
Volume 3: Includes the full system programming guide, Parts 1, 2, and 3, in one volume. Describes the operating-system support environment of Intel 64 and IA-32 architectures, including: memory management, protection, task management, interrupt and exception handling, multi-processor support, thermal and power management features, debugging, performance monitoring, system management mode, virtual machine extensions (VMX) instructions, and Intel® Virtualization Technology (Intel® VT).