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


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


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


Взаимодействие с 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

 

Интересное

Проблемы программы...
Illustrator — странная программа, она не похожа на другие продукты Adobe. Порой складывается впечатление, что ее выпускает не Adobe столько проблем она делает. С самой первой из них пользователь...
Подробнее...
Ну сколько уж можно...
Можно ли операционную систему не переустанавливать по несколько раз в месяц?Мое однозначное мнение: операционную систему можно не переустанавливать по несольку раз в месяц, и это я собираюсь...
Подробнее...
FAQ по разделу CGI интерфейс
Как мне сделать аутентификацию на Перле, а не средствами веб-сервера?:Для того, чтобы браузер выдал запрос логина и пароля, скрипт должен выдать следующие заголовки: print «WWW-Authenticate:...
Подробнее...
10 полезных приёмов при...
Если вы недостаточно хорошо освоили PowerShell, то наверняка не стремитесь применять этот инструмент в повседневной работе. Однако дананя оболочка является ядром таких систем, как Exchange 2007,...
Подробнее...
Сбор статистики вебмастером
Рано или поздно каждому вебмастеру приходит в голову идея подсчитать статистику посещений своего сайта. В простых случаях вполне хватает использования «внешних» служб — таких,...
Подробнее...
Оптимизация и с чем ее едят
Вы спросите, зачем это нужно, если сейчас мощность «железа» настолько высока, что всякого рода оптимизация все равно заметно не повлияет на быстродействие. Да, отчасти это так, но у многих еще...
Подробнее...
Безопасность. Какой вопрос...
Думаю, у каждого при чтении специализированной литературы возникали вопросы по поводу тех или иных терминов. Но, как правило, поблизости обычно нет того, кто может объяснить их значение. Проблемы...
Подробнее...
Флэшка или чудо будущего...
Могли ли бы мы раньше, при союзе, представить себе то, что устройство размерами меньшее, чем коробок спичек способно уместить в себе картинную галерею, архив деловой переписки или музыкальный...
Подробнее...
Новый способ удаления Msn...
Не секрет, что жесткая инсталляция и невозможность простого удаления программы Msn Messenger не очень радует многих пользователей Windows XP. Какой бы хорошей не была эта программа, большинство из...
Подробнее...
Photoshop CS2. Стань...
Книга предназначена для всех, кто хочет овладеть самой новой версией программы Photoshop — CS2, — от начинающих дизайнеров до пользователей, работающих с цифровыми фотографиями. В доступной форме...
Подробнее...