SysFn43/ru: Difference between revisions
Jump to navigation
Jump to search
(Created page with ''''Функция 43''' - ввод/вывод данных в порт. ---- === Вывод данных в порт === Параметры: * eax = 43 - номер функц...') |
No edit summary |
||
Line 25: | Line 25: | ||
Замечания: | Замечания: | ||
* Предварительно поток должен зарезервировать за собой указанный порт функцией 46. | * Предварительно поток должен зарезервировать за собой указанный порт [[SysFn46/ru|функцией 46]]. | ||
* Для зарезервированных портов вместо вызова этих функций рекомендуется использовать команды процессора in/out - это значительно быстрее, короче и проще. | * Для зарезервированных портов вместо вызова этих функций рекомендуется использовать команды процессора in/out - это значительно быстрее, короче и проще. | ||
* Из незарезервированных портов читать в любом случае нельзя. | * Из незарезервированных портов читать в любом случае нельзя. |
Revision as of 20:14, 5 April 2010
Функция 43 - ввод/вывод данных в порт.
Вывод данных в порт
Параметры:
- eax = 43 - номер функции
- bl = байт для вывода
- ecx = номер порта 0xnnnn (от 0 до 0xFFFF)
Возвращаемое значение:
- eax = 0 - успешно
- eax = 1 - поток не зарезервировал указанный порт
Ввод данных из порта
Параметры:
- eax = 43 - номер функции
- ebx игнорируется
- ecx = 0x8000nnnn, где nnnn = номер порта (от 0 до 0xFFFF)
Возвращаемое значение:
- eax = 0 - успешно, при этом ebx = введённый байт
- eax = 1 - поток не зарезервировал данный порт
Замечания:
- Предварительно поток должен зарезервировать за собой указанный порт функцией 46.
- Для зарезервированных портов вместо вызова этих функций рекомендуется использовать команды процессора in/out - это значительно быстрее, короче и проще.
- Из незарезервированных портов читать в любом случае нельзя.
|