Ошибка: Failed to parse the Currency Converter XML document.
$2 098.42


Ошибка: Failed to parse the Currency Converter XML document.
$24 894.59


Ошибка: Failed to parse the Currency Converter XML document.
$4 608.40


Взаимодействие с GLIBC

GLIBC — стандартная библиотека Си от GNU. Если вы программируете на ассемблере под Linux, то использование функций из этой библиотеки — хороший способ сократить размер программы и затраченные усилия. Безусловно, использование их замедляет программу, но это всего лишь значит, что их не стоит использовать в критических участках — циклах. Если же вы используете GLIBC скажем для форматированного вывода на консоль, то вряд ли вы заметите какое-нибудь замедление.

Более того — использование GLIBC в большинстве случаев сделает вашу программу легко портируемой на многие другие UNIX-платформы.


В качестве примера рассмотрим программу, которая импортирует функцию puts (вывод на консоль null-terminated строки)
;Точка входа «_start» на самом деле находится
;в подключаемом *.o файле стандартной библиотеки Си
;Она передает управление на функцию «main»,
;которая должна находиться в нашей программе
global main

;Внешние функции
extern exit
extern puts

;Сегмент кода:
section .text

;Функция main:
main:

;Параметры передаются в стеке:
push dword msg
call puts

;По конвенции Си вызывающая процедура должна
;очищать стек от параметров самостоятельно:
sub esp, 4

;Завершение программы с кодом выхода 0:
push dword 0
call exit

ret

;Сегмент данных
section .data

msg: db «An example of interfacing with GLIBC.»,0x0D,0

Компиляция:
nasm -felf inglibc.asm

Компоновка: Для вызова компоновщика с нужными параметрами мы не будем заморачиваться с командой ld, а воспользуемся GCC, который сам определит, что нужно нашему объектному файлу:
gcc inglibc.o -o inglibc

 

Интересное

Разработка эффективной...
Саму идею интернет-торговли нельзя назвать новой. Первые российские интернет-магазины появились еще в конце 90-х годов прошлого века. Многие из них работают по сей день. Многих, к сожалению, давно...
Подробнее...
Справочник по php
Справочник в формате .chm
Подробнее...
Печать из Linux на Windows...
1. Предисловие Перед нами стоит задача печати документов на Win-принтере (Canon LBP — 810) из Linux (ALT Master 2.2/2.4). Canon LBP — 810 подключен (USB-подключение) и настроен на Win-компьютере...
Подробнее...
Поиск файлов с расширением...
Чтобы убедиться в этом, создайте текстовый файл и запишите в него одно слово (например, «поиск»). Сохраните этот файл с расширением log или cpp. Теперь запустите поиск файлов (Пуск > Поиск),...
Подробнее...
Применение терминала сбора...
Терминал сбора данных - функциональное устройство, предназначенное для управления товарооборотом. К потребителю он попадает вместе со встроенным сканером, позволяющим распознавать многочисленные...
Подробнее...
Безопасность в Windows XP
1. Стратегия безопасности Windows XP Модель безопасности Windows XP Professional основана на понятиях аутентификации и авторизации. При аутентификации проверяются идентификационные данные...
Подробнее...
Организация оптовой...
Электронные торговые площадки - это сайты в категории В2В, на которых заключаются сделки между продавцами и покупателями. На таких сайтах собрана информация о ценах на продукцию на всех...
Подробнее...
Как выбрать телевизор?
Плазменная панель уже давно перестала быть роскошью. И в эпоху технического прогресса, многие выбирают именно этот вид телевизоров. Конечно, плазма значительно дороже, но у нее есть немало...
Подробнее...
Wi-Fi ноутбука может...
Два ведущих эксперта по безопасности обратили внимание на то, что оборудование Wi-Fi, разработанное без должного тщания, может оказаться небезопасным, позволяя хакерам использовать уязвимости для...
Подробнее...
Ошибки Windows!
Каждый хочет знать когда на экране его выскакивает ошибка с чем она связана!Код ошибки: 0 (0x0000)Операция выполнена успешно.Код ошибки: 1 (0x0001)Неверная функция.Код ошибки: 2 (0x0002)Системе не...
Подробнее...