Ассемблер: различия между версиями
Материал из OpenWiki
Перейти к навигацииПерейти к поиску
George (обсуждение | вклад) м (1 версия импортирована) |
George (обсуждение | вклад) Нет описания правки |
||
Строка 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> | |||
[[Категория:Языки программирования]] | [[Категория:Языки программирования]] |
Версия от 16: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
- ======================================================