Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

Подписываем
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
Подписываем
Министерство Образования и Науки Украины
Одесский Национальный Политехнический Университет
Институт компьютерных систем
Кафедра Компьютерных Систем
Протокол
Лабораторной работы № 27
«Программирование на языке ASSEMBLER в среде ОС LINUX»
Выполнил
Студент гр. АЕ 082
Суслов А.Н.
Проверил
Нестерюк А. Г.
Одесса 2011
Цель работы.
При выполнении работы следует изучить:
Порядок выполнения работы
Создание и редактирование текстового файла с заданным именем
Задание:
Листинг программы.
.data # section declaration
msg:
.ascii "-PROGA LABA27!? PAWED!?\n-COOL!!! \n" # our dear string
len = . - msg # length of our dear string
.text # section declaration
# we must export the entry point to the ELF linker or
.global _start # loader. They conventionally recognize _start as their
# entry point. Use ld -e foo to override the default.
_start:
# write our string to stdout
movl $len,%edx # third argument: message length
movl $msg,%ecx # second argument: pointer to message to write
movl $1,%ebx # first argument: file handle (stdout)
movl $4,%eax # system call number (sys_write)
int $0x80 # call kernel
#calculating
movl $3,%eax
movl $5,%ebx
subl %eax,%ebx
# and exit
movl $0,%ebx # first argument: exit code
movl $1,%eax # system call number (sys_exit)
int $0x80 # call kernel
Вывод:
Изучил способы создания простейшей программы на языке программирования ASSEMBLER в среде ОС LINUX. Изучил Порядок создания и редактирования исходного текстового файла, особенности синтаксиса языка ассемблер gas, порядок ассемблирования текста программы. Порядок компоновки объектного модуля, запуск программы на исполнение.