Составители:
Рубрика:
Common Intermediate Language
97
Таблица 3.12. Операция сравнения
96
CIL и системное программирование в Microsoft .NET
Таблица 3.13. Унарные арифметические операции
од Инструкция Встроенный Описание
операнд
0xFE 0x01 ceq – Сравнение на равенство.
Для целых чисел:
I ceq I => 1,
иначе => 0
Для чисел с плавающей запятой:
+inf ceq +inf => 1,
-inf ceq -inf => 1,
A ceq A => 1,
иначе => 0
0xFE 0x02 cgt – Сравнение на «больше».
Для целых чисел:
J cgt I => 1,
иначе => 0
Для чисел с плавающей запятой:
A cgt -inf => 1,
+inf cgt A => 1,
+inf cgt -inf => 1,
B cgt A => 1,
иначе => 0
0xFE 0x04 clt – Сравнение на «меньше».
Для целых чисел:
I clt J => 1,
иначе => 0
Для чисел с плавающей запятой:
A clt +inf => 1,
-inf clt A => 1,
-inf clt +inf => 1,
A clt B => 1,
иначе => 0
0xFE 0x03 cgt.un – Сравнение на «больше» беззна-
ковых целых чисел или неупо-
рядоченных чисел с плавающей
запятой. (Два числа с плаваю-
щей запятой называются неупо-
рядоченными, если хотя бы од-
но из них равно NaN.)
Для целых чисел:
L cgt.un K => 1,
иначе => 0
Для чисел с плавающей запятой:
NaN cgt.un C => 1,
C cgt.un NaN => 1,
A cgt.un -inf => 1,
+inf cgt.un A => 1,
+inf cgt.un -inf => 1,
B cgt.un A => 1,
иначе => 0
0xFE 0x05 clt.un – Сравнение на «меньше» беззна-
ковых целых чисел или неупо-
рядоченных чисел с плавающей
запятой.
Для целых чисел:
K clt.un L => 1,
иначе => 0
Для чисел с плавающей запятой:
NaN clt.un C => 1,
C clt.un NaN => 1,
A clt.un +inf => 1,
-inf clt.un A => 1,
-inf clt.un +inf => 1,
A clt.un B => 1,
иначе => 0
Код Инструкция Встроенный Описание
операнд
0x65 neg – Изменение знака числа
0x66 not –Побитовое НЕ (для целых чисел)
96 CIL и системное программирование в Microsoft .NET Common Intermediate Language 97
Таблица 3.12. Операция сравнения запятой. (Два числа с плаваю-
щей запятой называются неупо-
од Инструкция Встроенный Описание
рядоченными, если хотя бы од-
операнд
но из них равно NaN.)
0xFE 0x01 ceq – Сравнение на равенство.
Для целых чисел:
Для целых чисел:
L cgt.un K => 1,
I ceq I => 1,
иначе => 0
иначе => 0
Для чисел с плавающей запятой:
Для чисел с плавающей запятой:
NaN cgt.un C => 1,
+inf ceq +inf => 1,
C cgt.un NaN => 1,
-inf ceq -inf => 1,
A cgt.un -inf => 1,
A ceq A => 1,
+inf cgt.un A => 1,
иначе => 0
+inf cgt.un -inf => 1,
0xFE 0x02 cgt – Сравнение на «больше».
B cgt.un A => 1,
Для целых чисел:
иначе => 0
J cgt I => 1,
0xFE 0x05 clt.un – Сравнение на «меньше» беззна-
иначе => 0
ковых целых чисел или неупо-
Для чисел с плавающей запятой:
рядоченных чисел с плавающей
A cgt -inf => 1,
запятой.
+inf cgt A => 1,
Для целых чисел:
+inf cgt -inf => 1,
K clt.un L => 1,
B cgt A => 1,
иначе => 0
иначе => 0
Для чисел с плавающей запятой:
0xFE 0x04 clt – Сравнение на «меньше».
NaN clt.un C => 1,
Для целых чисел:
C clt.un NaN => 1,
I clt J => 1,
A clt.un +inf => 1,
иначе => 0
-inf clt.un A => 1,
Для чисел с плавающей запятой:
-inf clt.un +inf => 1,
A clt +inf => 1,
A clt.un B => 1,
-inf clt A => 1,
иначе => 0
-inf clt +inf => 1,
A clt B => 1, Таблица 3.13. Унарные арифметические операции
иначе => 0
Код Инструкция Встроенный Описание
0xFE 0x03 cgt.un – Сравнение на «больше» беззна-
операнд
ковых целых чисел или неупо-
0x65 neg – Изменение знака числа
рядоченных чисел с плавающей
0x66 not – Побитовое НЕ (для целых чисел)
Страницы
- « первая
- ‹ предыдущая
- …
- 53
- 54
- 55
- 56
- 57
- …
- следующая ›
- последняя »
