- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
unsigned int get_spoofed() {
char spa[21];
int a, b, c, d;
srand(time(0));
random_ct = rand();
random_num = ((random_ct % 254) + 1);
a = random_num;
random_ct = rand();
random_num = ((random_ct % 254) + 1);
b = random_num;
random_ct = rand();
random_num = ((random_ct % 254) + 1);
c = random_num;
random_ct = rand();
random_num = ((random_ct % 254) + 1);
d = random_num;
snprintf(spa, sizeof(spa), "%d.%d.%d.%d", a, b, c, d);
return ((unsigned int)host2ip(spa));
}
Ддосбот для роутеров https://github.com/eurialo/lightaidra/blob/master/source/utils.c
Причем во всех сетях включая мультикасты
Не знаю что делает host2ip, боюсь думать
Велосипедный inet_addr(), скорее всего.
а нахуя тогда вообще текстовое представление? Поцчему нельзя нашифтить все в 4 байта и потом поменять байтордер (если надо)?
и правда))
--мне все равно куда попасть
--тогда все равно куда идти
Вообще как они так ловко юзают Int?
а там хуяк и 64 бита
и все поедет
uint32_t же надо
Там вообще весь код по ссылке тот еще шедевр.
А привычка юзать uint**_t под ипишки и порты хорошая, сам юзаю.
Небось из за таких как он и оставили 32) Но вообще если в RFC ясно сказано "4 октета" то проще, чище и понятнее писать "32 бита" чем int:)
Зачем самому себе жизнь портить?
4 октета.
В теории может быть платформа, где понятия "байт" нет.
лол, как же там работает жаба с типом byte?
я зеленым забыл выделить
Я стараюсь в своем коде поддерживать endian neutral и не делать unaligned access . Но не 8битовый байт это уже что-то за гранью добра и зла.
https://tools.ietf.org/html/rfc176
Ряд ЭВМ 1950-х и 1960-х годов (БЭСМ-6, М-220) использовали 6-битовые символы в 48-битовых или 60-битовых машинных словах. В некоторых моделях ЭВМ производства Burroughs Corporation (ныне Unisys) размер символа был равен 9 битам. В советской ЭВМ Минск-32 использовался 7-битный байт.
6 для сишки не годится: набор символов не влезет.
Но древня сижка могла и шесть скушать
Сколько бит на букву было в кодах бодо?
6 значений — управляющие. Они отнимают место от каждого регистра, поэтому в регистрах остаётся по 26 мест.
В регистре букв все 26 — буквы.
В регистре цифр — 10 цифр и 16 остаётся под знаки препинания.
В русифицированном варианте появляется третий регистр, в нём 26 букв кириллицы, а оставшиеся буквы ютятся в регистре цифр и знаков препинания.
А еще наверное помнишь, как контроллер клавиаутуры кодировал всякие стрелочки
байт уже давно не совсем байт.
раньше в память ходили за байтом.
нынешние интерфейсы памяти уже давно ничего побайтово не адресуют. с тех пор как все начали мучатся с cache-line-alignment, это и был момент смерти настоящего байта: процессору/контроллеру памяти приходится симулировать байты, потому что физическая память уже давно 128-/256-/больше битовая и с одним байтом работать не способна.
БагорНаш
в 16битном режие
ps: но читались из памяти 2 байта даже в 8086!
именно потому надо было выравнивать (И собственно отсюда 16 бит стали называть словом)
Из банка ты читаешь рядом, из модуля -- шириной канала (64 бита) а поскольку читает кеш-контроллер то он читает линейкой.
Однако в ISA процессора ты все равно можешь оперировать байтом
Это ёжику понятно.
> Из банка ты читаешь рядом, из модуля -- шириной канала (64 бита) а поскольку читает кеш-контроллер то он читает линейкой.
Не стоит забывать что virtual 64-bit memory space != NNGB of physical RAM.
Ширина шины данных ничего общего с этим иметь не будет. Ширина адресной шины - я еще только про редкие high-end HPC ящики читал которые имеют 64 бит аддресную шину. У большинства современных компов/процов аддресная шина 42-52 бита.
И на этой теме: если задуматся, накой х будут делать шину в которой Н нижних бит будет всегда нулем? Учитывая как скупы и экономны железячники, я очень сомневаюсь что они для нулей будут линейки проводить.
ЗЫ Я правда не уверен какая там именно организация шины к памяти. Я видел схематики одной PowerPC-based (много лет назад) архитектуры и там для адреса и данных одна и та же 32-бита HW шина использовалась. Как оно сейчас, и на 64-бит процах, и со встроеными контроллерами памяти, я не знаю/не читал.
Я вообще-то про ширину канала у контроллера памяти, а не о размере адресуемой процессором памяти)
В контроллере (даже не смотря на то что сейчас он в процессоре)есть N каналов. Каждый канал это 64 физические дорожки, и они бегут к модулю DIMM. Если модуль двухсторонник, то можно два канала к нему подвести.
Ширина "канала" на модуле складывается из N микроскхем.
Например 8 микросхем по 8 бит каждая. Или 16 микросхем по 4 бита каждая.
Дальше я должен написать про банки внутри микрух, про их ряды и про sense ampl, но мне лень.
>>шину в которой Н нижних бит будет всегда нулем?
Да ни на какой, ты прав. Часть проводов тупо "не прокладывают" , в результате чего адресовать можно только пачку байтов.
Как я уже пейсал выше даже 8086 считывал всегда 2 байта (выравнивался по ним короче).
Но когда они все уже зачитаны в кеш, работать можно с каждым по отдельности.
На том PowerPC который втыкал, всегда передавалось 4 байта. Если читаешь 1 невыровненый байт, то на шине байт стоял в октете тоже со смещением. (Типа: если читаешь байт по адрессу 0х1, то на проц приходило 0х00нн0000 (биг-эндиан).)
Вообщем кавардак.
ну вот 8086 разрешает не выравниваться и наказывает тормозом (если ты читаешь байты 2 и 3, то на самом деле проц читает байты 1 и 2, затем 1 выкидывает, читает 3 и 4, 4 выкидывает итд)
А некоторые cpu и вовсе выдавали ошыбку
Я к слову про это читал, но мне после пары абзацев тоже лень стало.
Я в курсе что там между контроллером памяти и памятью протокол не тривильный, потому что память относительно тупая.
И при этом еще нужно как-то соседние адреса разложить так, чтобы их было удобнее читать. Клиент (кеш контроллер) то читает соседние адреса линейками. Cобссно мапинг линейного адреса в "DIMM, rank, колонку" итд -- так еще штука
http://deftcode.ninja/
это вебмартышка обычная, и немного кулхацкор-скрипт-кидди
Кстати, судя по манерному поведению и голосу, он ещё и голубой.
https://lurkmore.so/images/c/c2/Pojar_01-600x480.jpg
Я вот про такое и не знал, но мне прастительно: я не опытый .bat программист пока
https://lurkmore.to/%D0%94%D0%BE%D0%BA%D1%82%D0%BE%D1%80_%D0 %9F%D0%BE%D0%BF%D0%BE%D0%B2
>Invalid address: [email protected]_You must provide at least one recipient email address.
ЧЗХНТК?