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

Материал из OpenWiki
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
Строка 3: Строка 3:
Пример кода на ассемблере для 64-разрядного процессора фирмы [[Intel]]:
Пример кода на ассемблере для 64-разрядного процессора фирмы [[Intel]]:


<code><pre>
<pre>
;======================================================
;======================================================
;  SetFileContent
;  SetFileContent
Строка 22: Строка 22:
                     ret
                     ret
;======================================================
;======================================================
</pre></code>
</pre>


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

Версия от 17:02, 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
;======================================================