Роль меток в программном коде CIL
Роль меток в программном коде CIL
Вы. конечно, заметили, что в каждой строке программного кода реализации содержится префикс в форме лексемы IL_XXX: (например, IL_0000: IL_0001: и т.д.). Эти лексемы называются метками кода, и они могут иметь любой вид, какой вы только пожелаете (лишь бы они не дублировались в пределах одного и того же контекста). При записи содержимого компоновочного блока в файл с помощью ildasm.exe автоматически генерируются метки кода, имеющие вид IL_XXX:. Но вы можете изменить их с тем, чтобы они стали более информативными.
.method private hidebysig static void Main(string[] args) cil managed {
.entrypoint
.maxstack 8
Nothing_1: nop
Load_String: ldstr "Hello CIL code!"
PrintToConsole: call void [mscorlib]System.Console::WriteLine(string)
Nothing_2: nop
WaitFor_KeyPress: call string [mscorlib] System.Console::ReadLine()
RemoveValueFromStack: pop
Leave_Functlon: ret
}
Суть в том, что большинство меток кода совсем необязательно. Единственным случаем, когда метки кода оказываются по-настоящему полезными (и обязательными), является случай, когда в программном коде CIL используются ветвления или циклические конструкции. Например, в нашем случае вы можете исключить метки вообще.
.method private hidebysig static void Main(string[] args) cil managed {
.entrypoint
.maxstack 8
nop
ldstr "Hello CIL code!"
call void [mscorlib]System.Console::WriteLine(string)
nop
call string [mscorlib]System.Console::ReadLine()
pop
ret
}
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Пример: установка меток времени файла
Пример: установка меток времени файла Программа 3.3 реализует UNIX-команду touch, предназначенную для изменения кода защиты файлов и обновления меток времени до текущих значений системного времени. В упражнении 3.11 от вас требуется расширить возможности функции touch таким
11.3.6. Изменение временных меток файла
11.3.6. Изменение временных меток файла Владелец файла может изменять mtime и atime файла на любое желаемое значение. Это делает такие метки бесполезными для целей аудита, но позволяет инструментам архивирования вроде tar и cpio сбрасывать временные метки файлов в то значение,
22.6.2 Использование меток потока
22.6.2 Использование меток потока Поток — это последовательность пакетов от источника до точки назначения, требующая специального обслуживания. Например, обработка аудио или видео в реальном масштабе времени отличается от обработки обычных данных.Метка потока
18. Сетевые подключения на аппаратном и программном уровнях
18. Сетевые подключения на аппаратном и программном уровнях Создание сетевого подключения на аппаратном и программном уровнях – один из сложнейших этапов работы с любой операционной системой. В Windows XP предусмотрено несколько разных типов сетевых подключений, и каждый
Технология меток
0
Использование информации из окна обозревателя объектов в программном коде
Использование информации из окна обозревателя объектов в программном коде Обозреватель объектов удовлетворит любое любопытство к объектам в проекте, но, кроме того, он может служить и довольно неплохим средством создания программного кода. После того как вы найдете
Закладки в программном коде
Закладки в программном коде Предположим, сейчас 3 часа ночи. Ваши глаза слипаются, и вас клонит ко сну, но сроки нещадно поджимают, и вы упорно отбиваете на клавиатуре строку за строкой довольно однообразный программный код. Вдруг - прилив вдохновения - вы понимаете, как
Создание центральных меток
Создание центральных меток При проставлении размеров дуг и окружностей AutoCAD ставит метки в центрах измеряемых объектов. Вам может понадобиться разместить центральные метки для дуг и окружностей, которые не измеряются. В AutoCAD существуют разные способы сделать это. Один
Г.2. Информация о программном обеспечении GNU/Linux
Г.2. Информация о программном обеспечении GNU/Linux ? http://www.gnu.org. Это Web-узел проекта GNU Project. Здесь можно загрузить всевозможные бесплатно распространяемые программы. Среди них и GNU-библиотека языка С, содержащая многие из описанных в данной книге функций. Здесь же приведена
Создание центральных меток
Создание центральных меток При проставлении размеров дуг и окружностей AutoCAD ставит метки в центрах измеряемых объектов. Вам может понадобиться разместить центральные метки для дуг и окружностей, которые не измеряются. В AutoCAD существуют разные способы сделать это. Один
Фальсификация меток времени
Фальсификация меток времени Несколько неочевидной уязвимостью PGP является возможность злоумышленной подделки меток времени на цифровых подписях и сертификатах ключей. Вы можете пропустить этот раздел, если не интересуетесь деталями некоторых протоколов
Описание меток
Описание меток Раздел описания меток начинается с зарезервированного слова label, после которого следует список меток, перечисляемых через запятую. В качестве меток могут быть использованы идентификаторы и положительные целые числа: a1,l2,777777;Метки используются для
3.4. Общие сведения о программном обеспечении
3.4. Общие сведения о программном обеспечении В соответствии с принципом программного управления любой компьютер можно рассматривать как совокупность аппаратной (или технической) и программной частей.К настоящему моменту выделяют три вида программных
О программном сопровождении
О программном сопровождении Приведенный список факторов не включил обычно приводимое качество: возможность сопровождения (maintainability). Чтобы понять почему, мы должны поближе взглянуть на лежащее в его основе понятие: сопровождение (maintenance) . Сопровождение начинается с
Защищенное проставление меток времени
Защищенное проставление меток времени Защищенное датирование, или проставление меток времени , заключается в связывании доверенным центром датирования метки времени с определенной "порцией" данных при сохранении их аутентичности и целостности. Причем, важным