Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти та науки України
Національний університет «Львівська політехніка»
ЗВІТ
З лабораторної роботи №1
З дисципліни: «Засоби системного програмування»
На тему: «Процес створення
Завдання:
За допомогою текстового редактора створити файл з <прізвище>.asm , який містить програму, приведену нижче. (Параметр <прізвище> повинен містити Ваше прізвище в англійській транслітерації і мати довжину до 8 символів).
В тексті програми змінити повідомлення, що міститься за міткою HelloMessage так, щоб воно відображало Ваше прізвище. Зберегти внесені зміни.
Створити <прізвище>.exe-файл засобами система Turbo-Assembler. (тобто в командному рядку виконати:
tasm <прізвище>.asm <Enter>;/l
tlіnk <прізвище>.obj <Enter> )
Виконати створену програму і переконатися, що вона працює коректно, тобто виводить Ваше прізвище на екран.
Запустити систему відлагодження Turbo Debug та ознайомитися з її інтерфейсом та можливостями (td.exe).
Покроково виконати в системі Turbo Debug створений вище .exe – файл, задокументувавши зміни регістрів процесора та вміст сегменту даних.
Скласти звіт про виконану роботу, який повинен містити короткий опис можливостей Turbo Debug та лістинг Вашої програми, тобто вміст файлу <прізвище>.lst
Лістинг програми (вмістиме файлу *.lst):
Turbo Assembler Version 4.1 03/07/10 23:52:55 Page 1
C:\TASM\Progs\Kovalchuk.asm
№
Зміщення в сегменті
16-й Код команди асемблера
Команда асемблера
Коментарі
1
0000
.model small
;модель памяті
2
0000
.stack 100h
;сегмент стеку
3
0000
.data
;сегмент даних
4
0000
4B 6F 62 65 72 6E 79+
6B 0A 0D 24
msg db 'Kovalchuk' ,10, 13, '$'
;мітка з даними (повідомлення, яке буде виведене на екран)
5
000B
.code
;сегмент коду
6
0000
go:
;мітка початку програми
7
0000
B8 0000s
mov ax, @data
;Занесення адреси зміщення сегменту даних в регістр ax
8
0003
8E D8
mov ds, ax
; Занесення вмістимого регістру ax в регістр ds
9
0005
B4 09
mov ah,9
;Занесення десяткового числа 9 в старший байт al регістру ax
10
0007
BA 0000r
mov dx, offset msg
;Занесення адреси повідомлення в регістр dx
11
000A
CD 21
int 21h
;виклик переривання 21h і виконання функції з регістру al
12
000C
B4 10
mov ah,10h
;Занесення шіснадцяткового числа 10h в регістр al
13
000E
CD 16
int 16h
;виклик переривання 16h і виконання функції з регістру al
14
0010
B4 4C
mov ah,4Ch
;Занесення шіснадцяткового числа 4Сh в регістр al
15
0012
CD 21
int 21h
;виклик переривання 21h і виконання функції з регістру al
16
end go
;завершення програми, яка розпочиналась з заданої мітки
Turbo Assembler Version 4.1 03/07/10 23:52:55 Page 2
Symbol Table
Додаткові дані про програму:
Symbol Name
Type
Value
??DATE
Text
"03/07/10"
??FILENAME
Text
"Kovalchuk"
??TIME
Text
"23:52:55"
??VERSION
Number
040A
@32BIT
Text
0
@CODE
Text
_TEXT
@CODESIZE
Text
0
@CPU
Text
0101H
@CURSEG
Text
_TEXT
@DATA
Text
DGROUP
@DATASIZE
Text
0
@FILENAME
Text
KOVALCHUK
@INTERFACE
Text
000H
@MODEL
Text
2
@STACK
Text
DGROUP
@WORDSIZE
Text
2
GO
Near
_TEXT:0000
MSG
Byte
DGROUP:0000
Результат роботи програми:
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!