Ru-MaNGOS

Вернуться   Ru-MaNGOS > Документация > Прочая документация

Важная информация

Прочая документация Помощь, книги, инструкции, описания

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.05.2010, 00:18   #1
Foks
just a lazy user
 
Регистрация: 07.03.2010
Адрес: Киев
Сообщений: 31
Сказал(а) спасибо: 48
Поблагодарили 31 раз(а) в 11 сообщениях
Foks На верном пути
По умолчанию

В общем, вижу, много вопросов задается на одни и те же темы, решил создать. Просьба писать только по существу - дополнять эти мануалы, никакого обсуждения/флуда.
Начну с того, что уже написал в другой теме.

И так, некоторые поля в файле конфигурации (mangosd.conf, realmd.conf) являются битовыми масками (bitmask) -UsedProcessors и т.д. Так как многие новички не понимают, что это такое, объясню. Чтобы понять что это такое, нужно научиться переводить числа между разными системами исчисления. Для начала научимся переводить из любой системы в нашу привычную - десятичную. Именно в десятичной системе записываются все параметры в mangosd.conf.

Битовая операция в программировании — некоторые операции над цепочками битов. В программировании, как правило, рассматриваются лишь некоторые виды этих операций: логические побитовые операции и битовые сдвиги. Битовые операции применяются в языках программирования и цифровой технике, изучаются в дискретной математике.

Чтобы перевести число из любой системы счисления в десятичную нужно:
Каждую исходную цифру умножить на основу системы, поднесенную в степень - номер цифры начиная с нуля, считать СПРАВА, и полученные числа просуммировать.
Примеры:
Из двоичной 10111: 1*(2^0)+1*(2^1)+1*(2^2)+0*(2^3)+1*(2^4)
Из троичной 122012: 2*(3^0)+1*(3^1)+0*(3^2)+2*(3^3)+2*(3^4)+1*(3^5)
Из восьмиричной 765: 5*(8^0)+6*(8^1)+7*(8^2)
---------
Битовая маска - число в двоичной системе.
В параметре UsedProcessors каждый бит указывает включено ли ядро. 0 - означает ядро выключено, 1 означает ядро включено. Нам нужно включить четыре ядра - нужно число 1111
1*(2^0)+1*(2^1)+1*(2^2)+1*(2^3)=1*1 + 1*2 + 1*4 + 1*8=1+2+4+8=15.
Значит, UsedProcessors=15.
Или, например, нужно включить только 2 ядра: нужно число 11
1*(2^0)+1*(2^1)=1*1 + 1*2=1+2=3.
Значит, UsedProcessors=3.
---------
В каждой системе счисления столько цифр, какая у неё основа
2: 2 цифры: 0, 1
3: 3 цифры: 0, 1, 2
5: 5 цифер: 0, 1, 2, 3, 4
8: 8 цифер: 0, 1, 2, 3, 4, 5, 6, 7
16: 16 цифер: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
a,b,c,d,e,f - тоже цифры. Просто в 16-ричной системе должно быть 16 цифр, а мы знаем только 10. Поэтому берут, что:
A = 10
B = 11
C = 12
D = 13
E = 14
F = 15
----
Из 16-ричной системы перевести в нашу (десятичную) переводим точно так же:
Число 18AF42C
12*(16^0) + 2*(16^1) + 4*(16^2) + 15*(16^3) + 10*(16^4) + 8*(16^5) + 1*(16^6) = 25883692
-------------
Между 2-, 8-, 10-, 16-ричными системами умеет переводить калькулятор винды в режиме "Инженерный". Сверху слева при этом выбирается текущая система:
Bin - двоичная
Oct - восьмиричная
Dec - десятичная (наша)
Hex - шестнадцатиричная
__________________
Так как нету кнопки "Фууу", скажу вам прямо... (c)

Последний раз редактировалось Foks; 09.05.2010 в 00:28.
Foks вне форума   Ответить с цитированием
13 пользователя(ей) сказали cпасибо:
D_f (09.05.2010), Hantet (26.05.2010), Konctantin (09.05.2010), lina (25.05.2010), Lordronn (02.02.2012), lovepsone (02.02.2012), MangMan (24.07.2010), partizanes (22.03.2012)
 

Метки
битовые операции


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Текущее время: 09:51. Часовой пояс GMT +3.


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot