Flat Assembler 1.64. Мануал программера - [15]
«>data
» начинает определение специальных данных PE, за директивой должен следовать один из идентификаторов данных («>export
», «>import
», «>resource
» или «>fixups
») или номер записи данных в заголовке PE. Данные должны быть определены на следующих строках и заканчиваться директивой «>end data
». Если выбрано определение настроек адресов, они генерируются автоматически, и никаких данных определять больше не требуется. То же самое относится к ресурсам, если за идентификатором «>resourse
» следует оператор «>from
» и имя файла в кавычках — в этом случае данные берутся из этого файла ресурсов.
2.4.3 COFF
Чтобы выбрать COFF (Common Object File Format), используйте директиву «>format COFF
» или «>format MS COFF
», если вы хотите создать классический мелкософтофский файл COFF. По умолчанию код для этого формата 32-битный. Чтобы создать микросфтовский формат COFF для архитектуры x86-64, используйте установку «>format MS64 COFF
», в этом случае автоматически будет генерироваться код длинного режима.
«>section
» определяет новую секцию, за директивой должна следовать строка в кавычках, определяющая имя новой секции, и ещё может следовать один или более флагов секций. Возможные флаги такие: «>code
» и «>data
» для обоих вариантов COFF, «>readable
», «>writeable
», «>executable
», «>shareable
», «>discardable
» и «>notpageable
» только для микросовтофского варианта COFF. По умолчанию секция выровнена по двойному слову (четыре байта), но микросовтовский вариант COFF можно выровнять еще как-нибудь по-другому с помощью оператора «>align
» и следующим за ним значением выравнивания (любая степень двойки от двух до 8192) среди фагов секций.
«>extrn
» определяет внешний символ, за ним должно следовать имя символа и опционально оператор размера, указывающий размер данных, помеченных этим символом. Имя символа также может предваряться строкой в кавычках, содержащей имя внешнего символа и оператор «>as
». Пара примеров объявления внешних символов:
>extrn exit
>extrn 'impMessageBoxA@16' as MessageBox: dword
«>public
» объявляет существующий символ как общедоступный, за ним должно следовать имя символа, и далее опционально оператор «>as
» и строка в кавычках, содержащая имя, под которым символ будет действителен как общедоступный. Пара примеров объявления общедоступных символов:
>public main
>public start as '_start'
2.4.4 ELF
Чтобы выбрать формат вывода ELF, используйте директиву «>format ELF
». По умолчанию код для этого формата 32-битный. Чтобы создать формат ELF для архитектуры x86-64, используйте установку «>format ELF
», в этом случае автоматически будет генерироваться код длинного режима.
«>section
» определяет новую секцию, за директивой должна следовать строка в кавычках, определяющая имя новой секции, и ещё может следовать один или оба флага «>executable
» и «>writeable
», опционально также может идти оператор «>align
» со следующим за ним числом, определяющим выравнивание секции (это должна быть степень двойки), если выравнивание не указано, используется значение по умолчанию, которое равно 4 или 8, в зависимости от варианта выбранного формата.
«>extrn
» и «>public
» имеют те же значения и синтаксис у них, как в случае формата COFF (описанного в предыдущем параграфе).
Чтобы создать исполняемый файл, придерживайтесь директивы выбора формата со словом «>executable
». Это позволяет использовать директиву «>entry
» со следующим за ним значением, чтобы создать точку входа в программу. С другой стороны это делает недоступными директивы «>extrn
» и «>public
». За директивой «>section
» в этом случае может следовать только один или более флагов секций и начало секции будет выровнено по странице (4096 байт). Доступные флаги секций такие: «>readable
», «>writable
» и «>executable
».
Жизнь современного человека плотно связана с видеоиграми. Даже если вы не играете сами, в вашем окружении наверняка найдутся заядлые геймеры, а новости из индустрии игр зачастую не обходят и вас стороной. Это положение дел приводит к вопросам: а что же такое видеоигры и какое место они занимают в жизни человека? Поиском ответов на них занимается дисциплина game studies. Александр Ветушинский – один из ведущих российских представителей этого направления исследований. Его книга «Игродром» – философское осмысление этапов развития игровой индустрии, анализ.
В процессе чтения вы познакомитесь с основами программирования и, в частности, языка JavaScript, а также выполните несколько небольших проектов. Один из самых интересных проектов — создание своего языка программирования.
Человечество научилось собирать, обрабатывать и использовать в науке, бизнесе и повседневной жизни огромные массивы данных. Но что делать с данными, которых у нас нет? Допустимо ли игнорировать то, чего мы не замечаем? Британский статистик Дэвид Хэнд считает, что это по меньшей мере недальновидно, а порой – крайне опасно. В своей книге он выделяет 15 влияющих на наши решения и действия видов данных, которые остаются в тени. Например, речь идет об учете сигналов бедствия, которые могли бы подать жители бедных районов, если бы у них были смартфоны, результатах медицинского исследования, которые намеренно утаили или случайно исказили, или данных, ставших «темными» из-за плохого набора критериев для включения в выборку.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Это практическое руководство разработчика программного обеспечения на Visual Basic .NET и ADO.NET, предназначенное для создания приложений баз данных на основе WinForms, Web-форм и Web-служб. В книге описываются практические способы решения задач доступа к данным, с которыми сталкиваются разработчики на Visual Basic .NET в своей повседневной деятельности. Книга начинается с основных сведений о создании баз данных, использовании языка структурированных запросов SQL и системы управления базами данных Microsoft SQL Server 2000.