Ассемблер: различия между версиями

Материал из OpenWiki
Перейти к навигацииПерейти к поиску
м (1 версия импортирована)
Нет описания правки
Строка 1: Строка 1:
[[Язык программирования]] низкого уровня. Используется в тех случаях, когда требуется особо высокая скорость работы [[компьютерная программа|программы]] или же получение прямого доступа к ресурсам установленного на компьютере оборудования. Программирование на ассемблере отличается очень высокой трудоемкостью и требует от программиста глубоких знаний компьютерного оборудования и [[операционная система|операционной системы]].
[[Язык программирования]] низкого уровня. Используется в тех случаях, когда требуется особо высокая скорость работы [[компьютерная программа|программы]] или же получение прямого доступа к ресурсам установленного на компьютере оборудования. Программирование на ассемблере отличается очень высокой трудоемкостью и требует от программиста глубоких знаний компьютерного оборудования и [[операционная система|операционной системы]].
Пример кода на ассемблере для 64-разрядного процессора фирмы [[Intel]]:
<code>
;======================================================
;  SetFileContent
;                  Действие:  создать файл и записать в него содержимое буфера
;                  Параметры:  rax=(адрес ASCIZ строки FileName) rbx=(BufAddr) rcx=(BufSize)
;                  Возврат:    эта функция ничего не возвращает
;
;----------------------------
global              SetFileContent
;----------------------------
SetFileContent:    push    rax
                    call    CreateFile
                    push    rax
                    call    WriteBuffer
                    pop    rax
                    call    CloseFile
                    pop    rax
                    ret
;======================================================
</code>


[[Категория:Языки программирования]]
[[Категория:Языки программирования]]

Версия от 17:59, 30 марта 2024

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

Пример кода на ассемблере для 64-разрядного процессора фирмы Intel:

======================================================
SetFileContent
Действие
создать файл и записать в него содержимое буфера
Параметры
rax=(адрес ASCIZ строки FileName) rbx=(BufAddr) rcx=(BufSize)
Возврат
эта функция ничего не возвращает
----------------------------

global SetFileContent

----------------------------

SetFileContent: push rax

                   call    CreateFile
                   push    rax
                   call    WriteBuffer
                   pop     rax
                   call    CloseFile
                   pop     rax
                   ret
======================================================