Презентация Лекции по программированию на ассемблере онлайн

На нашем сайте вы можете скачать и просмотреть онлайн доклад-презентацию на тему Лекции по программированию на ассемблере абсолютно бесплатно. Урок-презентация на эту тему содержит всего 203 слайда. Все материалы созданы в программе PowerPoint и имеют формат ppt или же pptx. Материалы и темы для презентаций взяты из открытых источников и загружены их авторами, за качество и достоверность информации в них администрация сайта не отвечает, все права принадлежат их создателям. Если вы нашли то, что искали, отблагодарите авторов - поделитесь ссылкой в социальных сетях, а наш сайт добавьте в закладки.
Презентации » Устройства и комплектующие » Лекции по программированию на ассемблере



Оцените!
Оцените презентацию от 1 до 5 баллов!
  • Тип файла:
    ppt / pptx (powerpoint)
  • Всего слайдов:
    203 слайда
  • Для класса:
    1,2,3,4,5,6,7,8,9,10,11
  • Размер файла:
    1.68 MB
  • Просмотров:
    80
  • Скачиваний:
    0
  • Автор:
    неизвестен



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

№1 слайд
Введение. Классификация
Содержание слайда: Введение. Классификация языков программирования. Машинный язык и язык ассемблера. Структурная схема компьютера.

№2 слайд
Тищенко В.И. Учебное пособие
Содержание слайда: Тищенко В.И. Учебное пособие по курсу «Системное программирование»; Тищенко В.И. Учебное пособие по курсу «Системное программирование»; Тищенко В.И. Лабораторный практикум по курсу «Системное программирование»; Тищенко В.И. Лабораторный практикум «Разработка оверлейных и резидентных программ»; Юров В. Ассемблер – учебник; Юров В. Ассемблер – практикум.

№3 слайд
Классификация языков
Содержание слайда: Классификация языков программирования

№4 слайд
Машинный язык
Содержание слайда: Машинный язык программирования – это язык, непосредственно воспринимаемый компьютером. Машинный язык программирования – это язык, непосредственно воспринимаемый компьютером. Каждая его команда интерпретируется аппаратурой ЭВМ. Машинная команда имеет структуру вида: код операции, операнд1, операнд2 Операнды - это данные или адреса, над которыми будет выполняться действие, определенное кодом операции. Структура данных в оперативной памяти называется форматим данных.

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

№6 слайд
Выделим основных поколений
Содержание слайда: Выделим 5 основных поколений: Выделим 5 основных поколений: (конец 50-х г.) – Fortran, Algol; (середина 60-х г.) - Cobol, Lisp; (70-е годы) - PL/1, Pascal; (80-е годы) - Object Pascal, C++, Ada; (90-е годы) - Visual Basic, Delphi, Builder.

№7 слайд
с развитием аппаратных
Содержание слайда: с развитием аппаратных средств появились: функции ввода-вывода, поддержка файловой системы, взаимодействие с операционной системой; с развитием аппаратных средств появились: функции ввода-вывода, поддержка файловой системы, взаимодействие с операционной системой; с усложнением задач: поддержка подпрограмм, механизм передачи параметров (основа для методологии структурного программирования);

№8 слайд
возможность создания больших
Содержание слайда: возможность создания больших программ на основе подпрограмм изменили архитектуру языков и подход к компоновке программ (механизм раздельной трансляции программ и понятие модульности); возможность создания больших программ на основе подпрограмм изменили архитектуру языков и подход к компоновке программ (механизм раздельной трансляции программ и понятие модульности); абстракция данных, типизация и модульность – основа технологии объектно-ориентированного программирования; появление среды Windows породило технологию визуального программирования.

№9 слайд
Архитектура ЭВМ это
Содержание слайда: Архитектура ЭВМ – это абстрактное представление ЭВМ, которое отражает ее структурную, схемотехническую и логическую организации. Архитектура ЭВМ – это абстрактное представление ЭВМ, которое отражает ее структурную, схемотехническую и логическую организации.

№10 слайд
Содержание слайда:

№11 слайд
Содержание слайда:

№12 слайд
Классификация регистров.
Содержание слайда: Классификация регистров. Назначение регистров. Адресация памяти. Физическая адресация памяти.

№13 слайд
Электронное устройство,
Содержание слайда: Электронное устройство, предназначенное для временного хранения информации, называется регистром. Электронное устройство, предназначенное для временного хранения информации, называется регистром. Расположены на кристалле МП. Характеризуются размером: 8-разрядные, 16-разрядные, 32-разрядные, 64-разрядные.

№14 слайд
Содержание слайда:

№15 слайд
Содержание слайда:

№16 слайд
sp указатель стека sp
Содержание слайда: sp – указатель стека; sp – указатель стека; bp – указатель базы; si – индекс источника; di -индекс результата. Адрес памяти задается двумя значениями – сегмент и смещение, например : ds:dx, es:bx, ss:sp, ss:bp. Текущая исполняемая команда определяется cs:ip.

№17 слайд
ip указатель команд, ip
Содержание слайда: ip – указатель команд, ip – указатель команд, регистр флагов. Указатель команд - содержит смещение следующей команды в кодовом сегменте.

№18 слайд
системных системных
Содержание слайда: 16 – системных; 16 – системных; 16 – пользовательских: 8 РОН, индексных и указателей по 32 разряда eax/ax/ah/al, ebx/bx/bh/bl, edx/dx/dh/dl, ecx/cx/ch/cl, …….. 6 сегментных по 16 разрядов: cs, ds, ss, es, fs, gs; 2 регистра состояния и управления по 32 разряда: eip/ip и eflags/ flags.

№19 слайд
Содержание слайда:

№20 слайд
кб, Гб, Мб, Мб. Для МП intel
Содержание слайда: 16 32 20 24 16 32 20 24 2 =64 кб, 2 = 4Гб, 2 = 1Мб, 2 = 16 Мб. Для МП intel 8088 размер машинного слова – 16 бит или 2 байта, шина имела 20 линий, поэтому адрес 20- разрядный.

№21 слайд
Адрес, выдаваемый на шину
Содержание слайда: Адрес, выдаваемый на шину адреса, называется физическим. Адрес, выдаваемый на шину адреса, называется физическим. Физический адрес = (сегментный адрес)*16 + смещение или Физический адрес = (сегментный адрес)*10h + смещение.

№22 слайд
Пусть содержимое сегментного
Содержание слайда: Пусть содержимое сегментного регистра равно 2011h, смещение равно 15h, Пусть содержимое сегментного регистра равно 2011h, смещение равно 15h, тогда ФА=20110h+15h= 20125h

№23 слайд
Младший байт записывается в
Содержание слайда: Младший байт записывается в ячейку с меньшим адресом, старший – в ячейку с адресом на 1 больше. Младший байт записывается в ячейку с меньшим адресом, старший – в ячейку с адресом на 1 больше. Пример: пусть число 1234h размещено с адреса 1927:0000, т.е. занимает ф.а. 19270h и 19271h. Тогда цифры 34h – по адресу 19270h, а 12h – по адресу 19271h.

№24 слайд
АХ аккумулятор. АХ
Содержание слайда: АХ – аккумулятор. АХ – аккумулятор. ВХ – как вычислительный регистр, но может быть адресным. CX – счетчик в некоторых командах. DX – расширитель аккумулятора.

№25 слайд
si, di, bp, bx основное
Содержание слайда: si, di, bp, bx – основное назначение – хранить 16 – разрядное значение при формировании адреса. si, di, bp, bx – основное назначение – хранить 16 – разрядное значение при формировании адреса.

№26 слайд
ip указатель команд, ip
Содержание слайда: ip – указатель команд, ip – указатель команд, регистр флагов. Указатель команд - содержит смещение следующей команды. Методы изменения порядка выполнения команд: последовательный порядок команд, переход внутри сегмента (near – переход), переход в другой сегмент (far – переход).

№27 слайд
Определяет смещение текущей
Содержание слайда: Определяет смещение текущей вершины стека. Определяет смещение текущей вершины стека. Адрес стека определяется как ss:sp или ss:bp. Пример загрузки сегментных регистров cs в ds: а) mov ax, cs mov ds, ax в) push cs pop ds

№28 слайд
Регистр флагов. Механизм
Содержание слайда: Регистр флагов. Механизм формирования физического адреса. Форматы данных. Директивы определения данных.

№29 слайд
Содержание слайда:

№30 слайд
Содержание слайда:

№31 слайд
Содержание слайда:

№32 слайд
Классификация данных по
Содержание слайда: Классификация данных по разрядности Классификация данных по разрядности

№33 слайд
Содержание слайда:

№34 слайд
регистров данных длиной бит.
Содержание слайда: 8 регистров данных длиной 80 бит. 8 регистров данных длиной 80 бит. Оперирует 7 типами данных: 3 типа целых (слово 16 бит, короткое целое 32 бита, длинное целое 64 бита); 3 типа вещественных (короткое 32 бита, длинное 64 бита, временное 80 бит): знак, характеристика, мантисса 1 бит 8, 11 или 15 бит 23, 52 или 64 бита; Упакованные двоично-десятичные числа.

№35 слайд
Общий вид оператора
Содержание слайда: Общий вид оператора ассемблера: Общий вид оператора ассемблера: метка КОП операнд_1,операнд_2 Оператором может быть: машинная команда; директива транслятора; макрокоманда; комментарий.

№36 слайд
формат директивы формат
Содержание слайда: формат директивы: формат директивы: имя d выражение a dw 10 ; в десятичной системе счисления b dw 10h ; использование шестнадцатеричной системы счисления

№37 слайд
константой ABC dw h
Содержание слайда: константой: ABC1 dw 1234h константой: ABC1 dw 1234h списком: ABC2 db 1,2,3 строкой: ABC3 db ‘stroka’ с операцией дублирования: ABC4 db 4 dup (0)

№38 слайд
Режимы адресации в ассемблере.
Содержание слайда: Режимы адресации в ассемблере.

№39 слайд
Содержание слайда:

№40 слайд
. Регистровая адресация .
Содержание слайда: 1. Регистровая адресация 1. Регистровая адресация mov ax,bx mov al,dl 2. Непосредственная адресация mov ax,1234h mov cl,‘a’ mov ah,5

№41 слайд
.data .data ABC dw h .code
Содержание слайда: .data .data ABC dw 1234h .code mov dx,ABC Пусть адрес АВС = ds:0000, тогда команда под отладчиком выглядит так: mov dx, word ptr [0000] или mov dx, [0000] Для вычисления адреса операнда по умолчанию используется сегментный регистр ds.

№42 слайд
Смещение, которое вычисляется
Содержание слайда: Смещение, которое вычисляется аппаратно для доступа к операнду в памяти, называется исполнительным (эффективным) адресом (EA) Смещение, которое вычисляется аппаратно для доступа к операнду в памяти, называется исполнительным (эффективным) адресом (EA) .data ABC dw 1234h .code ………. mov bx, offset ABC mov ax,[bx] Для вычисления адреса операнда по умолчанию используется сегментный регистр - ds

№43 слайд
Эффективный адрес ЕА
Содержание слайда: Эффективный адрес ЕА вычисляется: Эффективный адрес ЕА вычисляется: Размер индексное смещение (сдвига) - 0, 1 или 2 байта. Пример: обращение к 2-му элементу массива слов .data ARRAY dw 1,2,3,4,5 .code mov bx,offset ARRAY mov ax,[bx]+2

№44 слайд
Эффективный адрес ЕА
Содержание слайда: Эффективный адрес ЕА вычисляется: Эффективный адрес ЕА вычисляется: Пример: загрузить 5-й элемент массива байтов в регистр al. .data table db 0Ah,0Bh,0Ch,0Dh,0Eh,0Fh .code mov di,0002 или mov di,2 mov al, table[di+2]

№45 слайд
Эффективный адрес ЕА
Содержание слайда: Эффективный адрес ЕА вычисляется: Эффективный адрес ЕА вычисляется: Пример: задан массив записей, каждая запись состоит из 6 слов. Переслать 3-е слово 2-ой записи в регистр ax. .data table dw 1,2,3,4,5,6,7,8,9,10,11,12,…….. .code mov si,12 или mov si,2*6 mov bx,offset table mov ax, [bx+si+4 ]

№46 слайд
Для адресации по базе с
Содержание слайда: Для адресации по базе с индексированием возможны следующие комбинации регистров: Для адресации по базе с индексированием возможны следующие комбинации регистров: [bx][si] +сдвиг совместно с регистром ds [bx][di] +сдвиг совместно с регистром ds [bp][si] +сдвиг совместно с регистром ss [bp][di] +сдвиг совместно с регистром ss Используеются разные формы записи операнда: [bx][di] +4, [bx+di] +4, [bx+di+4 ]

№47 слайд
Содержание слайда:

№48 слайд
сдвиг отсутствует, длина поля
Содержание слайда: сдвиг отсутствует, длина поля равна 0; сдвиг отсутствует, длина поля равна 0; занимает 1 байт, значение в диапазоне -128 до +127; занимает 2 байта, значение в диапазоне -32768 до +32767.

№49 слайд
- Принципы и свойства
Содержание слайда: - Принципы и свойства архитектуры ЭВМ. Иерархия памяти.

№50 слайд
Принцип хранимой программы
Содержание слайда: Принцип хранимой программы (Джона фон Неймана) – код программы и данные хранятся в оперативной памяти (ОП). Принцип хранимой программы (Джона фон Неймана) – код программы и данные хранятся в оперативной памяти (ОП). Принцип микропрограммирования – для каждой команды есть набор действий- сигналов, генерируемых для ее выполнения. Принцип адресности – пространство ОП линейно, т.е. совокупность последовательно пронумерованных ячеек памяти. Номер ячейки – ее адрес (0,1,2,…). Принцип программного управления – последовательное выполнение команд программы. Для изменения порядка выполнения используются специальные команды.

№51 слайд
. Принцип однородности памяти
Содержание слайда: 5. Принцип однородности памяти – для процессора нет принципиальной разницы между данными и командами. Над командами можно выполнять такие же действия как и над данными. 5. Принцип однородности памяти – для процессора нет принципиальной разницы между данными и командами. Над командами можно выполнять такие же действия как и над данными. 6. Принцип двоичного кодирования – необходимо четко разделять пространство данных и команд, т.к. процессор трактует двоичную информацию в зависимости от назначения адресного пространства . 7. Принцип безразличие к целевому назначению данных – процессору не важна логическая назрузка обрабатываемых данных.

№52 слайд
Способы кеширования кода и
Содержание слайда: Способы кеширования кода и данных: Способы кеширования кода и данных: в i486 – один блок встроенного кеша размером 8 кб для кодов и данных; в Pentium - два блока по 8 кб, один для кода, другой для данных. Возможен одновременный доступ к коду и данным.

№53 слайд
Содержание слайда:

№54 слайд
Располагается между основной
Содержание слайда: Располагается между основной памятью и процессором. Располагается между основной памятью и процессором. Основное назначение - улучшение эффективной скорости взаимодействия с памятью и увеличение быстродействия процессора. Подразделяется на кеш I уровня (на кристалле) и кеш II уровня (на кристалле или вне его).

№55 слайд
Предвосхищение наиболее
Содержание слайда: Предвосхищение наиболее вероятного использования процессором данных из ОП путем их копирования в кеш-память. Предвосхищение наиболее вероятного использования процессором данных из ОП путем их копирования в кеш-память. Данные передаются блоками, состоящими из нескольких слов. Среднее время доспупа к кеш – памяти: в 3 раза быстрее, чем к ОЗУ, в 10 раз быстрее, чем к ПЗУ.

№56 слайд
Физическая память, к которой
Содержание слайда: Физическая память, к которой МП имеет доступ по шине адреса, называется ОП. Физическая память, к которой МП имеет доступ по шине адреса, называется ОП. Выполнена ОП на дешевых и медленно действующих полупроводниковых устройствах. Реально реализована как последовательность ячеек – байтов. Каждому байту соответствует уникальный адрес, называемый физическим.

№57 слайд
Он обеспечивает Он
Содержание слайда: Он обеспечивает: Он обеспечивает: компактность хранения адреса в команде; гибкость механизма адресации; защиту адресного пространства задачи; поддержку виртуальной памяти.

№58 слайд
МП аппаратно поддерживает
Содержание слайда: МП аппаратно поддерживает модели: МП аппаратно поддерживает модели: сегментированную; страничную. Режимы работы МП: режим реальных адресов; защищенный; виртуального процессора.

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

№60 слайд
Первоначально начальные
Содержание слайда: Первоначально начальные физические адреса сегментов программы неизвестны. Первоначально начальные физические адреса сегментов программы неизвестны. ОС распределяет память и помещает адреса: в реальном режиме - в сегментные регистры; в защищенном – в специальную дескрипторную таблицу. Под физическим (линейным) адресом понимается адрес, выдаваемый на шину адреса.

№61 слайд
Содержание слайда:

№62 слайд
Виды операндов,
Содержание слайда: Виды операндов, поддерживаемые транслятором. Структура команды мп intel 80386. Байт mod r/m. Формат команды mov (1-2).

№63 слайд
метка КОП операнд ,операнд
Содержание слайда: метка КОП операнд_1,операнд_2 Оператором ассемблера может быть: машинная команда; директива транслятора; макрокоманда; комментарий.

№64 слайд
Постоянные или
Содержание слайда: Постоянные или непосредственные (число, строка): ABC equ 3 или АВС1=АВС1+120/5; Постоянные или непосредственные (число, строка): ABC equ 3 или АВС1=АВС1+120/5; Адресные (сегмент:смещение): ds:0001; Перемещаемые – адреса, непривязанные к конкретному физическому адресу памяти; Текущее значение счетчика адреса ($): mov ax,$+5; Регистровые: ax, cx, dx и т.д.; Базовый и индексный операнды: bx, di, si; Арифметические операторы в выражении: +, -, *, /;

№65 слайд
Операторы сравнения eq, ne,
Содержание слайда: Операторы сравнения: eq, ne, lt, le, gt, ge и т.д. Операторы сравнения: eq, ne, lt, le, gt, ge и т.д. Логические операторы: and, or, xor. Индексный оператор [ ]: mov ax, ABC [si] Оператор определения типа (приписывает операнду указанный тип): формат: тип ptr выражение пример: abc dw 12h mov al, byte ptr abc Получение сегментной части адреса или смещения: mov ax, seg ABC mov dx, offset ABC

№66 слайд
Содержание слайда:

№67 слайд
Префикс КОП байт mod r m
Содержание слайда: Префикс КОП байт_mod_r/m сдвиг данное 0,1 1 0,1 0,1,2 0,1,2 Длина команды: min - 1 байт, max - 7 байт.

№68 слайд
Содержание слайда:

№69 слайд
Каждый префикс может занимать
Содержание слайда: Каждый префикс может занимать 1 байт. Каждый префикс может занимать 1 байт. Есть 5 типов префиксов: повторения (в цепочечных командах); размера адреса; размера операнда; замены сегмента; блокировки шины.

№70 слайд
mod reg коп r m mod reg коп r
Содержание слайда: | mod | reg/коп | r/m | | mod | reg/коп | r/m | Поле mod – 2 бита, кодировка: 00 – индексное смещение отсутствует; 01 – смещение занимает 1 байт; 10 - смещение занимает 2 байта; 11 – поле r/m определяет регистр. Поля reg и r/m имеют длину по 3 бита. Определяют регистр и способ адресации.

№71 слайд
Содержание слайда:

№72 слайд
При регистровой адресации
Содержание слайда: При регистровой адресации поле mod = 11, а в поле r/m - код второго регистра. При регистровой адресации поле mod = 11, а в поле r/m - код второго регистра. Для прямой адресации поле mod = 00, r/m=110 и за байтом mod r/m стоят 2 байта, указывающих смещение прямого адреса.

№73 слайд
mov ax, data mov ds, ax
Содержание слайда: mov ax, @data mov ds, ax

№74 слайд
Пересылка регистра памяти в
Содержание слайда: Пересылка регистра/памяти в/из регистра: Пересылка регистра/памяти в/из регистра: mov ax,bx

№75 слайд
d определяет направление
Содержание слайда: d определяет направление перемещения: d определяет направление перемещения: w определяет размер операнда:

№76 слайд
Форматы команды MOV Префикс
Содержание слайда: Форматы команды MOV Префикс замены сегмента. Система машинных команд МП intel 8086 (п.1-2).

№77 слайд
. Непосредственный операнд в
Содержание слайда: 2. Непосредственный операнд в регистр/память 2. Непосредственный операнд в регистр/память mov ABC,46 Пусть смещение АВС равно 0005

№78 слайд
. Непосредственный операнд в
Содержание слайда: 3. Непосредственный операнд в регистр 3. Непосредственный операнд в регистр mov si,1000 (1000=03E8h)

№79 слайд
. Память в аккумулятор .
Содержание слайда: 4. Память в аккумулятор 4. Память в аккумулятор mov ax,exword ; если адрес exword = ds:0002, то А 1 02 00

№80 слайд
. Аккумулятор в память .
Содержание слайда: 5. Аккумулятор в память 5. Аккумулятор в память mov exbyte,al ; если адрес exbyte = ds:0004, то А 2 04 00

№81 слайд
. Регистр память в сегментный
Содержание слайда: 6. Регистр/память в сегментный регистр 6. Регистр/память в сегментный регистр mov ds,ax

№82 слайд
. Сегментный регистр в
Содержание слайда: 7. Сегментный регистр в регистр/память: 7. Сегментный регистр в регистр/память: mov ax,еs

№83 слайд
Префикс занимает байт и имеет
Содержание слайда: Префикс занимает 1 байт и имеет вид: Префикс занимает 1 байт и имеет вид: 001 regs 110 Кодировка сегментных регистров: Пример: переменная var определена в сегменте cs, тогда в исходном модуле - inc cs:var, под отладчиком - cs: inc var

№84 слайд
Содержание слайда:

№85 слайд
Выполняют обмен информации
Содержание слайда: Выполняют обмен информации между регистрами, ячейками памяти и портами ввода-вывода: Выполняют обмен информации между регистрами, ячейками памяти и портами ввода-вывода: a) команды пересылки данных (mov, lea, xchg); пример: mov bx,offset abc lea bx,abc xchg    ax,bx б) стековые операции (push, pop, pushf, popf). Пример: push    ds     pop     es        

№86 слайд
Стек это область оперативной
Содержание слайда: Стек – это область оперативной памяти, специально выделенная для временного хранения данных программы. Стек – это область оперативной памяти, специально выделенная для временного хранения данных программы. Работает по принципу LIFO в сторону уменьшения адресов. Используются 3 регистра: ss - сегментный регистр, sp – указатель стека, bp – указатель базы кадра стека.

№87 слайд
-----------------------------
Содержание слайда: ----------------------------- 0000:0000 ----------------------------- 0000:0000 ………………. ------------------------------ Сегмент стека SS:0000 Вершина стека SS:SP Дно стека SS:FFFF ------------------------------- …………………..

№88 слайд
рush запись значения в
Содержание слайда: рush – запись значения в вершину стека: рush – запись значения в вершину стека: sp=(sp)-2; Запись операнда по адресу ss:sp. рop – извлечение из вершины стека: Извлечение операнда по адресу ss:sp sp=(sp)+2; Запись операнда. рusha – групповая запись в стек регистров аx, cx, dx, bx, sp, bp, si, di рopa – групповое извлечение из стека в регистры

№89 слайд
рushf загрузка содержимого
Содержание слайда: рushf – загрузка содержимого регистра флагов в вершину стека: рushf – загрузка содержимого регистра флагов в вершину стека: sp=(sp)-2; Запись содержимого регистра флагов по адресу ss:sp. рopf – извлечение информации из вершины стека и загрузка в регистр флагов: извлечение операнда по адресу ss:sp; sp=(sp)+2; загрузка в регистр флагов.

№90 слайд
Содержание слайда:

№91 слайд
Система команд процессора п.
Содержание слайда: Система команд процессора (п.3-7). Прерывания. Классификация прерываний.

№92 слайд
Содержание слайда:

№93 слайд
Типы адресов short, near, far
Содержание слайда: Типы адресов: short, near, far Типы адресов: short, near, far Существует 4 способа передачи управления. Команды перехода Длина смещения безусловного перехода: jmp 2, 4 байта условного перехода: j xxx 1 байт перехода с вызовом процедур: call 2, 4 байта управления циклами: loop 1 байт Пример: jmp short label

№94 слайд
Если относительный адрес
Содержание слайда: Если относительный адрес перехода превышает 128 б, то меняют команду (а) на две команды (в): Если относительный адрес перехода превышает 128 б, то меняют команду (а) на две команды (в): а) в) cmp dl,’а’ cmp dl,’а’ jz zero jnz continue continue: jmp zero ………. Continue: zero: ……… ……….. Zero:

№95 слайд
Замену команд для условного
Содержание слайда: Замену команд для условного перехода можно сделать с помощью директивы транслятора jumps. Замену команд для условного перехода можно сделать с помощью директивы транслятора jumps. Тогда транслятор автоматически заменит условный переход на пару переходов.

№96 слайд
Использует значение регистра
Содержание слайда: Использует значение регистра CX, уменьшает его при каждом шаге на 1 и проверяет на 0. Использует значение регистра CX, уменьшает его при каждом шаге на 1 и проверяет на 0. Если не равно 0, то переход по адресу операнда. mov cx,10 mov ax,0 abc: inc ax ……… loop abc ddd: ……..

№97 слайд
Перемещают, сравнивают,
Содержание слайда: Перемещают, сравнивают, сканируют строки данных. Перемещают, сравнивают, сканируют строки данных. Работают с последовательностями элементов размером в байт, слово, двойное слово. Используются с префиксом повторения (rep). Например, команда movs: movsb movsw movsd

№98 слайд
Установить флаг df командами
Содержание слайда: Установить флаг df командами cld (по возрастанию) или std (по убыванию); Установить флаг df командами cld (по возрастанию) или std (по убыванию); Загрузить адреса цепочек в ds:si и es:di; Загрузить в cx количество элементов для обработки; Выполнить команду (например, movsw) с префиксом rep: rep movsw

№99 слайд
Для обработки специфический
Содержание слайда: Для обработки специфический ситуаций существует 3 команды: Для обработки специфический ситуаций существует 3 команды: int, iret, intо

№100 слайд
Назначение установка и сброс
Содержание слайда: Назначение: установка и сброс флагов, изменение режима функционирования процессора. Назначение: установка и сброс флагов, изменение режима функционирования процессора. Например, cld – сбросить флаг направления (флаг=0), std – установить флаг направления (флаг=1).

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

№102 слайд
Механизм прерываний
Содержание слайда: Механизм прерываний обеспечивает эффективное взаимодействие устройств ввода-вывода с микропроцессором. Механизм прерываний обеспечивает эффективное взаимодействие устройств ввода-вывода с микропроцессором. Обработка прерываний – это прерогатива программирования на ассемблере. Микропроцессор может распознать 256 типов прерываний. Для каждого типа разработана своя программа обработки, называемая обработчиком прерываний.

№103 слайд
Адрес программы обработки
Содержание слайда: Адрес программы обработки прерывания конкретного типа называется вектором прерываний. Размер – 4 байта: сегмент:смещение Адрес программы обработки прерывания конкретного типа называется вектором прерываний. Размер – 4 байта: сегмент:смещение Все векторы собраны в таблицу векторов прерываний. Размер таблицы 4*256=1024 байта. Расположена в младших адресах памяти.

№104 слайд
команды вызова пррываний
Содержание слайда: 2 команды вызова пррываний: 2 команды вызова пррываний: int тип_прерывания into (прерывание по переполнению). 1 команда возврата - iret

№105 слайд
Схема обработки прерываний.
Содержание слайда: Схема обработки прерываний. Функции int 21h для работы с файлами. Примеры использования команды int 21h для работы с файлами.

№106 слайд
Содержание слайда:

№107 слайд
По месту возникновения По
Содержание слайда: По месту возникновения: По месту возникновения: внешние (аппаратные), внутренние (программные). По типу системных ресурсов: BIOS, DOS.

№108 слайд
Векторы прерываний
Содержание слайда: Векторы прерываний микропроцессора (деление на 0, переполнение); Векторы прерываний микропроцессора (деление на 0, переполнение); Векторы прерываний микроконтроллера ( системный таймер, клавиатура, гибкий диск); Входные точки процедур системы BIOS (обмен данными с клавиатурой, дисплеем, …); Вызов процедур пользователя; Указатели системных таблиц (параметры гибкого и жесткого дисков).

№109 слайд
h завершение программ h
Содержание слайда: 20h – завершение программ; 20h – завершение программ; 21h- вызов функций DOS; 23h- обработка клавиш Ctrl+ Break; 25h- абсолютное чтение с диска; 26h- абсолютная запись на диск.

№110 слайд
Номер функции задают в
Содержание слайда: Номер функции задают в регистре ah, дополнительную информацию через другие регистры, например, ds:dx. Номер функции задают в регистре ah, дополнительную информацию через другие регистры, например, ds:dx. Выходная информация выдается через регистр al или другие регистры.

№111 слайд
Содержание слайда:

№112 слайд
ch -Создание файла ch
Содержание слайда: 3ch - Создание файла; 3ch - Создание файла; 6ch - Создание и открытие существующего; 3dh - открытие; 3eh - закрытие; 3fh – чтение файла; 40h - запись в файл; 42h – позиционирование указателя записи.

№113 слайд
Входные данные Входные данные
Содержание слайда: Входные данные: Входные данные: ah – 3ch, ds:dx - адрес ASCIIZ-строки с именем файла, cx - атрибут файла: 0 – обычный. Выходные данные: если cf=0, то в ax - логический номер файла (дескриптор файла), если cf=1, то в ax - код ошибки: 3 – нет указанного пути, 4 – нет свободного дескриптора, 5 – отказано в доступе.

№114 слайд
Функция сh на выходе передает
Содержание слайда: Функция 3сh на выходе передает код ошибки при cf=1. Функция 3сh на выходе передает код ошибки при cf=1. Для обработки этой ситуации используются команды: jc – переход при cf=1; jnc - переход при cf=0.

№115 слайд
Задается в регистре побитно
Содержание слайда: Задается в регистре побитно: Задается в регистре побитно: 0 бит = 1 –только для чтения, 0 бит = 0 – обычный; 1 бит = 1 – скрытый файл; 2 бит = 1 – системный файл; и т.д.

№116 слайд
Примеры работы с
Содержание слайда: Примеры работы с прерываниями. Структура программного сегмента. Префикс программного сегмента ( PSP). Буфер обмена DTA.

№117 слайд
.data .data handle dw
Содержание слайда: .data .data handle dw 0 filename db ‘myfile.txt’,0 point_fname dd filename .code ……….. xor cx,cx ; обнуляем сх lds dx,point_fname ; формируем указатель на файл mov ah,3ch int 21h jc exit ; переход по ошибке mov handle,ax ……………. exit:

№118 слайд
Входные данные Входные данные
Содержание слайда: Входные данные: Входные данные: ds:dx - адрес ASCIIZ-строки с именем файла, al =0 для чтения, al =1 для записи, al=2 для чтения и записи. Выходные данные: ax - логический номер файла.

№119 слайд
Входные данные Входные данные
Содержание слайда: Входные данные: Входные данные: cx - атрибут файла, 0- для обычного файла, bx – режим доступа, 2 – чтение-запись; dx – 1 - для существующего файла открыть доступ, 10h – создать и открыть; ds:si - адрес ASCIIZ-строки с именем файла. Выходные данные: ax - логический номер файла.

№120 слайд
Входные данные Входные данные
Содержание слайда: Входные данные: Входные данные: AH -3Еh, BX - логический номер файла.

№121 слайд
Входные данные Входные данные
Содержание слайда: Входные данные: Входные данные: ah=3Fh - для чтения, 40h - для записи в файл, bx - логический номер файла, cx - число считываемых байтов, ds:dx - адрес буфера ввода-вывода. Выходные данные: ax - число фактически считанных (или записанных) байтов.

№122 слайд
.data .data handle dw
Содержание слайда: .data .data handle dw 0 filename db ‘myfile.txt’, 0 point_fname dd filename .code ……….. xor cx,cx ; атрибут файла mov bx,2 ; режим доступа: чт-запись mov dx,1 ;если сущ-ет, то открыть lds si,point_fname ; формируем указатель на файл mov ah, 6ch int 21h jnc ABC ; переход, если существует

№123 слайд
mov dx, h создать и открыть
Содержание слайда: mov dx,10h ; создать и открыть mov ah,6ch int 21h jc exit ; переход по ошибке ABC: mov handle, ax ……………. exit: ; обработка ошибки

№124 слайд
.data .data filename db вывод
Содержание слайда: .data .data filename db ‘вывод строки’,13,10,$ ……….. .code mov ax,@data mov ds,ax mov dx, offset filename mov ah, 9h int 21h

№125 слайд
Функция ah засылается в ah.
Содержание слайда: Функция 2ah засылается в ah. Функция 2ah засылается в ah. Выходные данные: cx – год в формате типа 2013, dh – месяц, dl – день.

№126 слайд
Область памяти, начинающаяся
Содержание слайда: Область памяти, начинающаяся с минимального адреса загрузки программы пользователя, называется программным сегментом. Область памяти, начинающаяся с минимального адреса загрузки программы пользователя, называется программным сегментом. Этот адрес определяется при вызове программы, т.е. при выполнении операции OS - EXEC. Программный сегмент состоит из: префикса программного сегмента (PSP),расположенного по смещению 0000; тела загрузочного модуля (по смещению 0100h).

№127 слайд
Содержание слайда:

№128 слайд
Прерывания Прерывания h
Содержание слайда: Прерывания : Прерывания : 22h – завершение процесса; 23h – нажатие клавиш Ctrl+Break; 24h – фатальная ошибка. Область сохранения вектора имеет вид: 2 байта – смещение, 2 байта –сегмент. Адрес среды - занимает 2 байта , задается сегментным адресом. Вызов диспетчера функций DOS (5 байт): call – 1 б, адрес обработчика - 4 б ( смещение, сегмент). Номер функции выбирается из регистра ah.

№129 слайд
Буфер обмена DTA. Системное
Содержание слайда: Буфер обмена DTA. Системное окружение. Структура dos и карта памяти.

№130 слайд
DTA Disk Transfer Area
Содержание слайда: DTA (Disk Transfer Area) –рабочий буфер обмена с диском. DTA (Disk Transfer Area) –рабочий буфер обмена с диском. Содержит символы командной строки после имени программы, включая все пробелы, разделители и код 0dh. Пример вызова программы в командной строке: abc.exe bbbbb 5 Содержимое dta: 20424242424220350d При нажатии клавиши Enter в DTA записывается код 0dh. Максимальная длина командной строки 140 байт.

№131 слайд
Передаваемая среда является
Содержание слайда: Передаваемая среда является копией родительского процесса. Передаваемая среда является копией родительского процесса. Представляет собой последовательность строк ASCIIZ в виде: параметр=значение0 Общая длина строк – до 32 кб, по умолчанию -512 б.

№132 слайд
Строки среды I Строки среды I
Содержание слайда: Строки среды I Строки среды I ------------------------------------ Имя_1=значение_1<00> I Имя_2=значение_2<00> I ……………………….. I Имя_n=значение_n<00> I <00> I <0100> I _имя_программы<00> I <00> I

№133 слайд
ch адрес среды ch адрес среды
Содержание слайда: 2ch – адрес среды; 2ch – адрес среды; 80h – длина рабочего буфера; 81h – начальное смещения для содержимого командной строки.

№134 слайд
int h int h переход по адресу
Содержание слайда: int 20h; int 20h; переход по адресу 0000 в программном сегменте; int 21h с ah=4ch; Косвенный переход по адресу 0050 в PSP.

№135 слайд
DS, ES указывают на начало
Содержание слайда: DS, ES указывают на начало PSP; DS, ES указывают на начало PSP; IP, SP получают значения, указанные при редактировании программы в заголовке загрузочного модуля; CS, SS, получают значения из заголовка загрузочного модуля, модифицированные на адрес начала программного сегмента.

№136 слайд
DS, ES, CS, SS указывают на
Содержание слайда: DS, ES, CS, SS указывают на начало PSP; DS, ES, CS, SS указывают на начало PSP; IP равен 0100h; SP указывает на конец программного сегмента, длина сегмента в ячейке 6 PSP уменьшается, чтобы освободить пространство для стека; в вершину стека записывается нулевое слово.

№137 слайд
Блок начальной загрузки boot
Содержание слайда: Блок начальной загрузки (boot record); Блок начальной загрузки (boot record); Интерфейс с BIOS; Встроенные команды dos; Командный процессор (command.com).

№138 слайд
Блок начальной загрузки
Содержание слайда: Блок начальной загрузки занимает 1 сектор. Блок начальной загрузки занимает 1 сектор. Размещается: на дискете - на нулевом треке; на диске – в первом секторе раздела dos.

№139 слайд
Содержит команды
Содержание слайда: Содержит команды взаимодействия с bios. Обеспечивает интерфейс низкого уровня с подпрограммами работы с устройствами через bios. Содержит команды взаимодействия с bios. Обеспечивает интерфейс низкого уровня с подпрограммами работы с устройствами через bios.

№140 слайд
Команды dos обеспечивают
Содержание слайда: Команды dos обеспечивают пользовательским программам интерфейс высокого уровня. Включают операции : Команды dos обеспечивают пользовательским программам интерфейс высокого уровня. Включают операции : управления файлами; распределения оперативной памяти; блочного обмена с дисками; управления двигателем нгмд и др.

№141 слайд
Состоит из трех частей
Содержание слайда: Состоит из трех частей: Состоит из трех частей: резидентной; инициализации; нерезидентной. содержит подпрограммы обработки прерваний (22h, 23h, 24h ) и подзагрузки нерезидентной части. включает обработку файла autoexec.bat и определяет начальный адрес загрузки программы пользователя.

№142 слайд
Состоит из Состоит из
Содержание слайда: Состоит из: Состоит из: интерпретатора команд; системного загрузчика нерезидентных команд и программ. Загрузчик вызывается операцией OS exec -вызов и загрузка программ.

№143 слайд
таблица векторов прерываний
Содержание слайда: 0000:0000 таблица векторов прерываний; 0000:0000 таблица векторов прерываний; 0040:0000 глобальные переменные BIOS; 0050:0000 глобальные переменные DOS; хххх:0000 BIO.COM; хххх:0000 DOS.COM; хххх:0000 2 части command.com; хххх:0000 резидентные программы; хххх:0000 нерезидентные программы и команды; хххх:0000 нерезидентная часть command.com

№144 слайд
Операторы ассемблера
Содержание слайда: Операторы ассемблера; директивы данных; варианты вызова процедур. директивы управления листингом.

№145 слайд
метка мнемоника операнды
Содержание слайда: [метка] мнемоника [операнды] [метка] мнемоника [операнды] (код операции) Оператор ассемблера может быть: машинной командой; псевдооператором или директивой транслятора; макрокомандой; комментарием.

№146 слайд
метка мнемоника операнды
Содержание слайда: [метка] мнемоника [операнды] [метка] мнемоника [операнды] (код операции) Псевдооператоры (директивы ассемблера) подразделяются на 2 класса: директивы данных; директивы управления листингом.

№147 слайд
. Определение идентификаторов
Содержание слайда: 1. Определение идентификаторов: имя equ выражение 1. Определение идентификаторов: имя equ выражение Пример: count equ cx N equ 1024 2. Определение данных: резервируют память - db (1 байт), dw (2 байта), dd (4 байта), df, dp (6 байтов), dq (8 байтов), dt (10 байтов)

№148 слайд
Директивы segment и ends
Содержание слайда: Директивы segment и ends – определяют в программе начало и конец сегмента. Директивы segment и ends – определяют в программе начало и конец сегмента. Формат директив: имя segment [тип подгонки,] [тип связи,]‘класс’, длина адреса Например, АВС segment para public ‘code’,use16 ……… АВС ends

№149 слайд
Регистр адресации задается
Содержание слайда: Регистр адресации задается директивой assume. Регистр адресации задается директивой assume. Формат: assume сегментный_регистр:имя_сегмента [, ] Пример: mycode segment para public ‘code’ assume cs:mycode,ds:mydata begin: mov ax,seg mydata mov ds,ax ……………….. mycode ends

№150 слайд
Формат имя proc атрибут
Содержание слайда: Формат: имя proc [атрибут дальности] Формат: имя proc [атрибут дальности] ……….. ret имя endp Атрибут дальности: near или far Пример: .code startАВС proc near …………. ret startАВС endp Механизм вызова – сохранение контекста программы в стеке. Контекст программы – это информация о состоянии программы в точке вызова процедуры.

№151 слайд
Пусть АВС - имя процедуры
Содержание слайда: Пусть АВС1 - имя процедуры типа near, Пусть АВС1 - имя процедуры типа near, АВС2 – имя процедуры типа far, adr1, adr1 – ссылки: adr1 dw offset ABC1 adr2 dw offset ABC2,seg ABC2 Варианты вызова процедур: Прямая адресация в сегменте (ближний вызов): call near ptr ABC1 Прямая адресация между сегментами (дальний вызов): call far ptr ABC2 Косвенная адресация в сегменте: call word ptr adr1 Косвенная адресация между сегментами: call dword ptr adr2

№152 слайд
public имя делает указанное
Содержание слайда: public имя – делает указанное имя доступным для других программных модулей, которые впоследствии могут загружаться вместе с данным модулем. public имя – делает указанное имя доступным для других программных модулей, которые впоследствии могут загружаться вместе с данным модулем. extrn имя: тип - описывает идентификатор, определенный в другом модуле и описанный там в операторе public. Тип для данных: byte, word, dword Тип для процедур: near, far include имяфайла - вставка в текущий файл текста из файла

№153 слайд
модуль модуль public ABC ABC
Содержание слайда: 1 модуль: 1 модуль: public ABC ABC dw 1234h 2 модуль: extrn ABC:word ……….. mov ax,ABC

№154 слайд
end имя программы
Содержание слайда: end имя_программы

№155 слайд
page число строк число
Содержание слайда: page [число строк] [число столбцов] page [число строк] [число столбцов] 10-255, 57 60-132, 80 title текст1 subttl текст2

№156 слайд
Возможности макросов.
Содержание слайда: Возможности макросов. Основные понятия. Классификация директив макросов.

№157 слайд
Исходный Макроопределение
Содержание слайда: Исходный Макроопределение Макрорасширение Исходный Макроопределение Макрорасширение модуль ABC test.asm в test.asm в test.asm

№158 слайд
Исходный Макроопределение
Содержание слайда: Исходный Макроопределение Макрорасширение модуль Select x test.asm в test.asm в test.asm

№159 слайд
Поименованный набор
Содержание слайда: Поименованный набор операторов ассемблера называется макрокомандой. Поименованный набор операторов ассемблера называется макрокомандой. Группа команд, определяющая действие макрокоманды, называется макроопределением. Процесс включения в исходный текст программы команд из макроопределения называется макрорасширением или макрогенерацией.

№160 слайд
Определение макрокоманды.
Содержание слайда: Определение макрокоманды. Определение макрокоманды. Вызов макрокоманды.

№161 слайд
Формат Формат имя MACRO
Содержание слайда: Формат: Формат: имя MACRO список_формальных_параметров тело макроопределения ENDM Список_формальных_параметров состоит из элементов вида: имя_формального_аргумента [тип] где тип: :REQ – для параметров, задаваемых явно; =<строка> для стандартного значения параметра.

№162 слайд
. ADD Word MACRO OP REQ,OP
Содержание слайда: 1. ADD_Word MACRO OP1:REQ,OP2:REQ,SUM 2. ADD_Word MACRO OP1,OP2,SUM=dx

№163 слайд
Вызов макрокоманды
Содержание слайда: Вызов макрокоманды осуществляется по имени макроса с указанием списка фактических параметров. Вызов макрокоманды осуществляется по имени макроса с указанием списка фактических параметров. Процесс замены формального параметра соответствующим фактическим значением при макрорасширении называется подстановкой аргументов.

№164 слайд
Определение Определение ADD
Содержание слайда: Определение: Определение: ADD_Word MACRO OP1,OP2,SUM MOV AX,OP1 ADD AX,OP2 MOV SUM,AX ENDM Макрокоманда: ADD_Word BX,CX,DX Макрорасширение: MOV AX,BX ADD AX,CX MOV DX,AX

№165 слайд
Второй вариант макрокоманды
Содержание слайда: Второй вариант макрокоманды: Второй вариант макрокоманды: ADD_Word price, tax, cost Макрорасширение: MOV ax, price ADD ax, tax MOV cost, ax

№166 слайд
директивы общего назначения
Содержание слайда: 1) директивы общего назначения: 1) директивы общего назначения: MACRO, ENDM, LOCAL 2) директивы повторения: REPT, IRP, IRPC 3) условные: IF, IFDEF, IFDIF, IFIDN, IFB, IFNB 4) выхода: EXITM 5) управления листингом: LALL, SALL, XALL

№167 слайд
аaa macro bbb аaa macro bbb
Содержание слайда: аaa macro bbb аaa macro bbb local next push cx mov cx,bbb ………………….. ; группа команд next: loop next pop cx endm

№168 слайд
Макрокоманда Макрокоманда aaa
Содержание слайда: Макрокоманда: Макрокоманда: aaa 100 Макрорасширение: push cx mov cx,100 ………………….. ; группа команд ??0001: loop ??0001 pop cx

№169 слайд
Директивы повторения.
Содержание слайда: Директивы повторения. Условные директивы. Макрооперации.

№170 слайд
REPT выражение REPT выражение
Содержание слайда: REPT выражение REPT выражение ……… ENDM Пример: зарезервировать L байтов и присвоить им знач-я от 1 до L. ALLOCATE MACRO TLABEL, L TLABEL EQU THIS BYTE VALUE = 0 REPT L VALUE = VALUE+1 DB VALUE ENDM ENDM

№171 слайд
Вызов Вызов .data Allocate
Содержание слайда: Вызов: Вызов: .data Allocate table,40 Макрорасширение в точке вызова: tablе EQU THIS BYTE VALUE = 0 VALUE = VALUE+1 DB 1 VALUE = VALUE+1 DB 2 …………………………………………… VALUE = VALUE+1 DB 40

№172 слайд
IRP параметр , lt список
Содержание слайда: IRP параметр ,<список аргументов> IRP параметр ,<список аргументов> ……… ENDM Пример создания таблицы из четырех слов: .data IRP ABC ,<1,2,3,4> DW ABC *ABC ENDM

№173 слайд
.data .data DW DW DW DW
Содержание слайда: .data .data DW 1 *1 DW 2 *2 DW 3 *3 DW 4 *4

№174 слайд
IRPC параметр, lt строка gt
Содержание слайда: IRPC параметр,<строка> IRPC параметр,<строка> Пример: IRPC RG, <ABCD> PUSH RG&X ENDM Макрорасширение : PUSH AX PUSH BX PUSH CX PUSH DX

№175 слайд
IF задает начало условно
Содержание слайда: IF задает начало условно ассемблируемого блока , если <выражение> истинно или имеет ненулевое значение. IF задает начало условно ассемблируемого блока , если <выражение> истинно или имеет ненулевое значение. Формат: IF <выражение> ……………. ENDIF В выражении можно использовать операции: EQ, NE, GT, GE, LT, LE

№176 слайд
. Без расширения оператора
Содержание слайда: 1. Без расширения оператора условия 1. Без расширения оператора условия .data BufNum dw 5 DoBuf db 0 .code ……… if DoBuf mov ax, BufNum call ReadBuf endif ……..

№177 слайд
. С расширением условного
Содержание слайда: 2. С расширением условного оператора 2. С расширением условного оператора BufNum dw 5 DoBuf db 1 .code ……… if DoBuf расширяется в: mov ax, BufNum mov ax, 5 call ReadBuf call ReadBuf endif ……..

№178 слайд
Операторы альтернативной
Содержание слайда: Операторы альтернативной обработки пустых операторов: Операторы альтернативной обработки пустых операторов: IFB <параметр> IFNB <параметр> Параметр всегда задается в угловых скобках и определяет имя формального аргумента макроса.

№179 слайд
Пример макроопределения
Содержание слайда: Пример макроопределения: Пример макроопределения: PRINT_T MACRO MSG IFB <MSG> MOV SI, DEFMSG ELSE MOV SI, MSG ENDIF CALL SHOW_T ENDM ……….. DEFMSG db ‘no’

№180 слайд
POPREGS MACRO REG , REG
Содержание слайда: POPREGS MACRO REG1, REG2 POPREGS MACRO REG1, REG2 IFNB <REG1> POP REG1 ENDIF IFNB <REG2> POP REG2 ENDIF ENDM

№181 слайд
IF IF IF Пример IF INCLUDE
Содержание слайда: IF1 IF1 IF2 Пример: IF1 INCLUDE TEXTMACRO.TXT Ассемблирование, если символическое имя определено: IFDEF символическое имя Пример: IFDEF SIZE BUF db SIZE DUP(?) endif

№182 слайд
Ассемблирование, если
Содержание слайда: Ассемблирование, если параметры различны: Ассемблирование, если параметры различны: IFDIF <параметр1><параметр2> Ассемблирование, если параметры тождественны: IFIDN <параметр1><параметр2>

№183 слайд
amp - операция замещения amp
Содержание слайда: & - операция замещения & - операция замещения ;; - подавление комментария % - вычисление выражения ! - операция литерального ввода символа <> - операция литерального ввода строки

№184 слайд
. Операция замещения .
Содержание слайда: 1. Операция замещения 1. Операция замещения Формат: & имя параметра Пример: makemsg MACRO str, n msg&n db ‘&str’ endm Вызов макроса: makemsg <Введите значение:>,5 Расширение: msg5 db ‘Введите значение:’

№185 слайд
. Вычисление выражения .
Содержание слайда: 3. Вычисление выражения 3. Вычисление выражения Формат: %выражение Пример: makemsg <строка>,%3+5 4. Операция литерального ввода символа Формат: !символ Пример: makemsg <нельзя вводить число!>100>,3 5. Операция литерального ввода строки Формат: <строка>

№186 слайд
Директивы управления
Содержание слайда: Директивы управления листингом. Упрощенные директивы TASM. Модели памяти. Этапы разработки программы. Отладчик Turbo Debugger (td).

№187 слайд
lall lall xall sall.
Содержание слайда: lall; lall; xall; sall.

№188 слайд
model модификатор модель
Содержание слайда: model [модификатор] модель памяти [имя кодового сегмента] model [модификатор] модель памяти [имя кодового сегмента] Модификатор: use16, use32, dos Tasm создает идентификаторы: @code, @data, @stack, …. Упрощенные директивы определяют сегменты: .code - кода .stack - стека .data - инициированных данных типа near .fardata - инициированных данных типа far .const – постоянных данных .data? - неинициированных данных типа near

№189 слайд
tiny tiny small medium
Содержание слайда: tiny tiny small medium compact large huge

№190 слайд
Содержание слайда:

№191 слайд
tasm имя исх. модуля , имя
Содержание слайда: tasm имя_исх._модуля [, имя_объектного_модуля] tasm имя_исх._модуля [, имя_объектного_модуля] [, имя_lst] [, имя_crf] [опции] tasm имя , , , tasm имя /l /c tlink список объектных модулей [, имя_exe_файла] [, имя_ map_файла] [, список lib_файлов] [опции] debug или td Для td: tasm /zi имя_исходного модуля tlink /v имя_объектного модуля

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

№193 слайд
формулировка ассемблерной
Содержание слайда: формулировка ассемблерной модели задачи; выбор метода реализации; разработка алгоритма реализации; разработка структуры программы в соответствии с моделью памяти.

№194 слайд
уточнение структуры данных и
Содержание слайда: уточнение структуры данных и определение ассемблерного представления формата; программирование; комментирование текста программы и составление предварительного описания программы.

№195 слайд
составление тестов для
Содержание слайда: составление тестов для проверки правильности работы программы; обнаружение, локализация и устранение ошибок в программе, выявленных в тестах; корректировка кода программы и описания.

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

№197 слайд
Для работы в Turbo Debugger
Содержание слайда: Для работы в Turbo Debugger (td) необходимо создать загрузочный модуль: Для работы в Turbo Debugger (td) необходимо создать загрузочный модуль: tasm /zi имя tlink /v имя Управление работой в отладчике ведется посредством меню двух типов: глобальное (вызов по F10); локальное (вызов по Alt-F10 или правой кнопкой мыши).

№198 слайд
Используется один из четырех
Содержание слайда: Используется один из четырех режимов: Используется один из четырех режимов: безусловное выполнение (F9); по шагам: а) F7: Run|Trace into - c пошаговым выполнением процерур и прерываний; б) F8: Run|Trace over - процеруры и прерывания выполняются как одна команда; до текущего положения курсора (F4); с установкой точек прерывания (breakpoints).

№199 слайд
Сначала устанавливаются точки
Содержание слайда: Сначала устанавливаются точки прерывания курсором и F2, Сначала устанавливаются точки прерывания курсором и F2, затем – F9. Прервать выполнение программы – Ctrl+F2

№200 слайд
Содержание слайда:

№201 слайд
Содержание слайда:

№202 слайд
Содержание слайда:

№203 слайд
Подсистема ввода вывода
Содержание слайда: Подсистема ввода/вывода

Скачать все slide презентации Лекции по программированию на ассемблере одним архивом: