Главная – Учебные курсы - Контакт autocad1012@yahoo.com
Учебные курсы
НИЯУ (МИФИ)
Компьютерный практикум. Основы программирования с помощью системных функций MS-DOS. Группы Т7-11, Т01-11М.
Дополнительные вопросы
Как программировать на ассемблере для Линукс?
Автор: lonesome TSH/Digital Daemons
Дата: .01.2003
Раздел: Низкоуровневое программирование в Linux
Полный текст статьи приведен в документе, доступном по указанной ссылке. Для нас существенно сходство и различие в программах, которые делают одно и то же. Выводят на экран символьную строку. Параллельные тексты программ, одну из которых мы писали и отладили на занятии в пятницу 4.03.2011, а другую можно написать, откомпилировать и запустить на Линуксе, у кого она есть. Обратите внимание на несовпадение номеров функций и прерываний для выполнения одних и тех же задач.
txt segment 'code' assume cs:txt,ds:data,es:data,ss:stack myproc proc mov ax,data mov ds,ax mov
ah,40h mov bx,1 mov cx,meslen mov dx,offset mes int 21h mov
ah,4ch int 21h myproc endp txt ends data segment mes db
'Privet' meslen=$-mes data ends stack segment stack db 256 dup (0) stack ends end myproc |
global _start
_start:
mov eax, 4 mov ebx, 1 mov ecx, msg mov edx, msglen int 0x80
mov eax, 1 mov ebx, 0 int 0x80
section .data
msg: db "Linux rulez 4ever",0x0A,0 msglen equ $-msg |
MS-DOS TASM |
LINUX NASM |