Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

почему в ip адресе не могут быть цифры больше 255 ???

mr.unix pwd Ученик (242), закрыт 4 года назад
Лучший ответ
Pavel Sircheli Просветленный (21483) 13 лет назад
в двух словах -
2 в степени 8 = 256
один адрес по техническим причинам исключается, остаётся 255

длина ip не может быть больше 4 байт, итого на одно число - 1 байт
в 1 байте 8 бит - отсюда взялась 8 степень

и немного нагугленной истории )

Когда-то Интернет был очень маленьким. Настолько маленьким, что по сути весь Интернет (который тогда назывался Арпанет (Arpanet)) мог использовать для адресации каждого подключенного компьютера всего один байт с максимальным значением 255. В то время группа студентов-выпускников, работающих над проектом в Стэнфорде, приступила к созданию замены для NCP, одного из первых протоколов для сети Арпанет. Они назвали разработанный ими протокол TCP/IP и разрешили использовать для адресов четыре байта, посчитав, что этого будет достаточно.

Более того, они установили такой формат адресов, что начало каждого адреса указывало на один из трех классов, к которому относился адрес. По мнению студентов, Интернет должен был состоять из нескольких очень крупных сетей (которые они отнесли к классу А) , большого числа сетей среднего размера (класс В) и множества мелких сетей (класс C). Созданная студентами схема предусматривала 126 сетевых адресов класса А, 64 000 сетевых адресов класса В и почти 2 миллиона сетевых адресов класса С.
Остальные ответы
Владимир Лукашевич Ученик (164) 8 лет назад
ПАША 100% Просветленный (21308), как то вы криво объясняете.. !
Адрес IPv4 - значит адрес 4 байта или 32 бита (4*8), то есть в адресе есть 32 символа в двоичной системе! (0 или 1). Эти все цифры разбиты на 4 блока по 8 ноликов и единичек. Нам же IP адрес представлен в 4 блока, но в десятичной системе! А блок из 8 цифр двоичной системы может быть максимум равен числу 255 в десятичной системе! Вычисляется как 2^8-1, где 2 - это две возможные цифры (0 или1), 8 - это количество цифр в блоке (а не бит, как написано выше, просто цифры совпали не более того....)
Ron Профи (754) 7 лет назад
Паша и Владимир написали в общем все верно, только не учли, что для 8-битной записи десятичного числа нет степени 8! А только 7. Отсюда получается максимальное число - 255. Это число 11111111 в двоичной системе. И нет никаких технических причин.
sadsadasfs fsdfsdfsd Ученик (205) 7 лет назад
ПОМОГИТЕ ЧТО ДЕЛАТЬ ЕСЛИ В IP Есть цифра 0
visla Знаток (314) 2 года назад
@Ron - и это абсолютно верный ответ.
Но технические причины здесь как раз факт того, что при переводе 2-ного числа 1111 1111 в 10-ный формат приняли считать позицию битов (разрядов) с 0, а не с 1. Поэтому получается номера для битов, заполненных единицами - 0, 1, 2, 3, 4, 5, 6, 7 (а не с 1 до 8).
И тогда при переводе получится 8 действий, но нумерованных с 0-го разряда (позиции), а не с 1. Что влияет на степени 2-ки, на которые она перемножается.
1*2(в ст. 0) + 1*2(в ст.1) + 1*2(в ст.2) + 1*2(в ст.3) + 1*2(в ст.4) + 1*2(в ст.5) + 1*2(в ст.6) + 1(в ст.7) = 255
Вот эта нумерация, думаю, как раз и есть "технические причины" :)
Похожие вопросы