AMX MOD X
Четверг, 08.01.2026, 02:27:39



Приветствую Вас Гость | RSS
[ Главная ] [ Значки [ & ] [ | ] [ &~ ] [ &= ~ ] [ |= ] и что они означают - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 1
  • 1
Модератор форума: slogic, AlMod  
Значки [ & ] [ | ] [ &~ ] [ &= ~ ] [ |= ] и что они означают
KokaДата: Воскресенье, 05.10.2008, 19:22:04 | Сообщение # 1
Полковник
Группа: Пользователи
Сообщений: 169
Репутация: 1
Статус: Не в сети
сабж, вот значки и что они означают скажите пожалуйста :)

[ & ]
[ | ]
[ & ~ ]
[ &= ~ ]
[ |= ]

какие еще есть "значки" и что они означают ( кроме стандартных которые я знаю blush [ == ] [ != ] [ >= ] [ > ] [ <= ] [ < ] [ && ] )


стал ощущать рефлексы тоньше, оставаясь как всегда с идеей той же...
 
ArgusДата: Воскресенье, 05.10.2008, 20:17:05 | Сообщение # 2
AMXModX Fan
Группа: Cупер-модеры
Сообщений: 379
Репутация: 8
Статус: Не в сети
• e – любое выражение;
• i – целое или символ;
ie обозначает произвольное целое выражение:

~ie – инверсия или дополнение до единицы (НЕ); значение каждого разряда изменя-ется с 0 на 1, или с 1 на 0. Например: пусть aa=5 и aa типа unsigned short( 5 в двоичной системе – 101); результат ~aa равен 1111111111111010 или 65530;

ie1 | ie2 – дизъюнкция или логическое сложение над каждой парой разрядов опе-рандов (ИЛИ); например, если aa=5, bb=0, cc=2, то результат aa|bb будет равен 0 и результат aa|ccb будет – 7, т.к. двоичные представления aa=101, bb=0, cc=10;

ie1 & ie2 – конъюнкция или логическое умножение над каждой парой разрядов операндов (И); например, если aa=13, bb=0, cc=7, то результат aa&bb будет равен 0 и результат aa&cc будет – 5, т.к. двоичные представления aa=1101, bb=0, cc=111;

&= или |= – присваивание


Правила форума
Поиск плагинов
Последние сообщения форума
 
KokaДата: Воскресенье, 05.10.2008, 20:49:42 | Сообщение # 3
Полковник
Группа: Пользователи
Сообщений: 169
Репутация: 1
Статус: Не в сети
спасибо :)

Code

[offtop]

&= или |= – присваивание

ie1 | ie2
aa=5, bb=0, cc=2
aa|bb будет равен 0
aa|cc будет 7

ie1 & ie2
aa=13, bb=0, cc=7
aa&bb будет равен 0
aa&cc будет 5

[/offtop]

а вот с инверсией непонятно:
если a = 410
new b = ~a

то b сколько будет ? или как


стал ощущать рефлексы тоньше, оставаясь как всегда с идеей той же...

Сообщение отредактировал Koka - Воскресенье, 05.10.2008, 20:57:56
 
DaTaДата: Воскресенье, 05.10.2008, 21:29:37 | Сообщение # 4
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Репутация: 16
Статус: Не в сети
допустим a в двоичном виде имеет значение 0...00101011, тогда ~a == 1...11010100
 
dArkДата: Воскресенье, 05.10.2008, 21:30:55 | Сообщение # 5
Подполковник
Группа: Cупер-модеры
Сообщений: 126
Репутация: 1
Статус: Не в сети
А что непонятно то, берёшь 410, переводишь в двоичную форму получается 110011010, теперь берёшь, там где было 1 ставишь 0, там где 0, 1, и затем отбрасываешь незначащие нули с лева, получается 1100101, или 101 в десятичной. Ещё можно по другому, берёшь ближайшую вверх степень двойки, и отнимаешь от неё 410 и ещё единицу, получается, ближайшая степень двойки от 410 это 2^9 = 512. 512 - 410 - 1 = 101.
 
KokaДата: Четверг, 09.10.2008, 03:38:39 | Сообщение # 6
Полковник
Группа: Пользователи
Сообщений: 169
Репутация: 1
Статус: Не в сети
спс теперь все ясно B)

Добавлено (2008-10-09, 3:38 Am)
---------------------------------------------
о еще нашел значки :)

Code

public slowDown(id)
{
  static Float:vel[3]
  pev(id, pev_velocity, vel)
   
  vel[0] /= 3.0
  vel[1] /= 3.0
  vel[2] /= 2.0
   
  set_pev(id, pev_velocity, vel)
}

что такое /= ?


стал ощущать рефлексы тоньше, оставаясь как всегда с идеей той же...
 
DaTaДата: Четверг, 09.10.2008, 10:43:18 | Сообщение # 7
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Репутация: 16
Статус: Не в сети
a op= b
равносильно
a = a op b
где op - бинарный оператор, например % * / - + | & ^ >> >>> <<

Полистал бы http://www.compuphase.com/pawn/pawn-lang.pdf , хоть и на английском

 
KokaДата: Четверг, 09.10.2008, 17:48:48 | Сообщение # 8
Полковник
Группа: Пользователи
Сообщений: 169
Репутация: 1
Статус: Не в сети
=) тоесть получается так
Code

public slowDown(id)
{
   static Float:vel[3]
   pev(id, pev_velocity, vel)
     
   vel[0] /= 3.0
   vel[1] /= 3.0
   vel[2] /= 2.0
     
   set_pev(id, pev_velocity, vel)
}  

тоже самое что

Code

public slowDown(id)
{
   static Float:vel[3]
   pev(id, pev_velocity, vel)
     
   vel[0] = vel[0] / 3.0
   vel[1] = vel[1] / 3.0
   vel[2] = vel[2] / 2.0
     
   set_pev(id, pev_velocity, vel)
}  
boyan

спасибо


стал ощущать рефлексы тоньше, оставаясь как всегда с идеей той же...
 
slogicДата: Пятница, 10.10.2008, 02:00:35 | Сообщение # 9
Генералиссимус
Группа: Админы
Сообщений: 1941
Репутация: 47
Статус: Не в сети
не совсем то же самое, сокращенный вариант должен быть оптимальнее, хотя точно можно узнать только с пом. декомпиляции amxx
 
  • Страница 1 из 1
  • 1
Поиск:

AMX Mod X Russian Community © 2006-2026