35397

Резервування і ініціалізація памяті

Практическая работа

Информатика, кибернетика и программирование

Мета: Навчитися резервувати і ініціалізувати память під програми на асемблері. Це основна команда пересилки даних. Вона реалізує найрізноманітніші варіанти пересилки. Відзначимо особливості застосування цієї команди.

Украинкский

2014-10-21

54.5 KB

3 чел.

еревко О.В.                                                                                                    2ПМС-07

Практична робота №19

Тема: Резервування і ініціалізація пам'яті.

Мета: Навчитися резервувати і ініціалізувати пам'ять під програми на асемблері.

Устаткування: ПК. Програма Turbo Assembler 5.0.

  1.  Правила ТБ.
  2.  Індивідуальне завдання

Текст програми

masm

model small

stack 256

.data

 per_1 db 23

 per_2 dw 9856

 per_3 dd 9875645

 per_4 dw 29857

.code

main:

   mov ax,@data

   mov ds,ax

exit:

   mov ax,4c00h

   int 21h

end main

masm

  •  транслятор

model small

- директива и модель памяти 

stack 256

- сегмент стека модуля и розміром стека

.data

- сегмент даних

per_1 db 23

per_2 dw 9856

per_3 dd 9875645

per_4 dw 29857

- присвоєння змінним значень з урахуванням типів данних

.code

  •  сегмент коду

mov ax,@data

mov ds, ax

-  загрузка в сегментний регістр ax адрес хранения переменних в памяти пам’яті використовуючи регістр ds

exit:

- обозначение метки

mov ax,4c00h

int   21h

end main

- завершение роботи

результат роботи програми

  1.  Контрольні питання.
    1.  Чим є директиви сегментації?

Програма розбивається на декілька сегментів, кожний з яких має своє функціональне призначення.

  1.  Перерахуйте сегментні регістри і групи, на які вони діляться.

Сегмент вводу cs, даних ds, стека ss, дополнительний ds

  1.  У яких випадках використовують спрощені директиви сегментації?

Спростити опис для простих програм, що містять по одному сегменту для коду, даних і стека.    

 

  1.  Команда пересилки даних mov і особливості її використовування.

Це основна команда пересилки даних. Вона реалізує найрізноманітніші варіанти пересилки. Відзначимо особливості застосування цієї команди.

  •  Командою MOV не можна здійснити пересилку з однієї області пам'яті в іншу. Якщо така необхідність виникає, то потрібно використовувати як проміжний буфер будь-який доступний в даний момент регістр загального призначення.
  •  Не можна  завантажити в сегментний регістр значення безпосередньо з пам'яті. Для такого завантаження потрібен проміжний об'єкт. Це може бути регістр загального призначення або стік. Якщо подивитися на лістинг примера1, то побачите на початку сегменту коду дві команди MOV, виконуючі настройку сегментного регістра DS. При цьому через неможливість напряму завантажити в сегментний завантаження потрібен проміжний об'єкт. Це може бути регістр загального призначення або стік. При цьому через неможливість напряму завантажити в сегментний регістр значення адреси сегменту, що міститься в приреченій змінній @data, доводиться використовувати регістр загального призначення АХ.
  •  Не можна переслати вміст одного сегментного регістра в інший сегментний регістр. Це пояснюється тим, що в системі команд немає відповідного коду операції. Але необхідність в такій дії часто виникає. Виконати таку пересилку можна, використовуючи як проміжні всі ті ж регістри загального призначення. Ось приклад ініціалізації регістра ES значенням з регістра DS:

mov  ах, ds

mov es, ах

  •  Не можна використовувати сегментний регістр CS як операнд призначення. Причина тут проста. Річ у тому, що в архітектурі процесора IA-32 пари CS:IP містить адресу команди, яка повинна виконуватися наступною. Зміна командою MOV вмісту регістра CS фактично означала б операцію переходу, а не пересилки, що неприпустимо.

     5.Директиви опису даних, цілі двійкові числа.

Ціле двійкове число — це число, закодоване в двійковій системі счислення. У архітектурі IA-32 розмірність цілого двійкового числа може складати 8, 16 або 32 біта.

Опис цілих двійкових чисел в програмі робиться з використанням директив опису даних DB, DW і DD.

DB   - тип даних байт;

DW  - тип даних слово;

DD   - тип даних подвійне слово;


 

А также другие работы, которые могут Вас заинтересовать

15812. Деловые игры как средство формирования интереса к обучению у студентов ВНЗ 75.5 KB
  Деловые игры как средство формирования интереса к обучению у студентов ВУЗа Баранова А. Н. Значимость образования и его роль в обществе считается приоритетом всестороннего развития современного общества. Образовательные системы в любой стране мира должны способст
15813. ОПРЕДЕЛЕНИЕ ОПТИЧЕСКИХ КОНСТАНТ ПЛЕНОК НА ПОДЛОЖКАХ ИЗ КРЕМНИЯ 1.22 MB
  Среди фундаментальных характеристик вещества одно из основных мест принадлежит оптическим константам ОК показателю преломления n и показателю поглощения. Показатели преломления и поглощения...
15814. ИССЛЕДОВАНИЕ ОПТИЧЕСКИХ ПЛЕНОК ФТОРИДОВ И БИФТОРИДОВ 655.5 KB
  ИССЛЕДОВАНИЕ ОПТИЧЕСКИХ ПЛЕНОК ФТОРИДОВ И БИФТОРИДОВ Со времен своего возникновения технология изготовления многослойных интерференционных покрытий ИП занимающая целую отрасль в оптическом приборостроении претерпела значительные изменения. Современные средства...
15815. МЕТОДЫ АНАЛИЗА УСТОЙЧИВОСТИ ОПТИЧЕСКИХ ИНТЕРФЕРЕНЦИОННЫХ ПОКРЫТИЙ 3.56 MB
  МЕТОДЫ АНАЛИЗА УСТОЙЧИВОСТИ ОПТИЧЕСКИХ ИНТЕРФЕРЕНЦИОННЫХ ПОКРЫТИЙ При решении задач проектирования и изготовления тонкопленочных оптических интерференционных покрытий особое внимание уделяется исследованию воспроизводимости их спектральных характеристик [17]. ...
15816. Microsoft Sql Server 2005. Представления 117 KB
  Microsoft Sql Server 2005. Представления Представления Представления это именованные запросы на выборку данных инструкции SELECT на языке TSQL хранящиеся в базе данных. В запросах представления можно использовать так же как и таблицы независимо от сложности их инструкций SELECT.
15817. Microsoft SQL Server 2005. Хранимые процедуры 87 KB
  Microsoft SQL Server 2005. Хранимые процедуры Хранимые процедуры Хранимая процедура это наиболее часто используемая в базах данных программная структура представляющая собой оформленный особым образом сценарий вернее пакет который хранится в базе данных а не в отдельном ...
15818. SQL Server 2005. Программирование на T-SQL 78.5 KB
  SQL Server 2005. Программирование на TSQL Программирование на TSQL Синтаксис и соглашения TSQL. Правила формирования идентификаторов Все объекты в SQL Server имеют имена идентификаторы. Примерами объектов являются таблицы представления хранимые процедуры и т.д. Идентификато
15819. Начало работы с Microsoft SQL Server 2005 187 KB
  Начало работы с Microsoft SQL Server 2005 Утилита SQL Server Management Studio Подавляющую массу задач администрирования SQL Server можно выполнить в графической утилите SQL Server Management Studio. В ней можно создавать базы данных и все ассоциированные с ними объекты таблицы представления ...
15820. Основы Transact SQL: Добавление, изменение и удаление данных 63 KB
  Основы Transact SQL: Добавление изменение и удаление данных. Основы Transact SQL: Добавление изменение и удаление данных в таблицах Запросы рассмотренные ранее были направлены на то чтобы получить данные содержащиеся в существующих таблицах базы данных. Главным ключевым сло...