Означает ли переход Mac на чипы Intel, что мы закончили с битами с числами в двоичных ресурсах для межплатформенного распределения данных?
Это последняя проблема или есть другие платформы, о которых я не знаю?

Это, конечно, не последняя проблема, особенно если вы пишете для встраиваемых систем, включая карманные ПК и т. д. MIPS, ARM и другие архитектуры поддерживают архитектуры с обратным порядком байтов, которые могут выбирать порядок байтов при запуске системы.
Если вы пишете код, который зависит от порядка байтов, вам нужно позаботиться о порядке байтов. Не ждите, что эта «проблема» исчезнет в ближайшее время.
Определите ПК, что вы считаете ПК?
В настоящее время я набираю это из дистрибутива Linux, который работает на процессоре arm 9, который может быть установлен с другим порядком байтов, но по умолчанию используется большой порядок байтов. Little endian используется Intel, AMD и Via (совместимо с x86).
Порядок байтов не исчезнет в ближайшее время, каждый раз, когда вы передаете что-либо по сети, вы должны убедиться, что это правильный порядок байтов, поскольку порядок байтов, заданный Интернет-протоколом, на самом деле является прямым порядком байтов.
См. Статья в Википедии о порядке байтов для получения дополнительной информации.
Вы, кажется, забываете, что порядок байтов выходит за рамки архитектуры процессоров. Существует множество алгоритмов и протоколов, требующих определенного порядка байтов. Например, я потратил две недели, пытаясь заставить работать алгоритм хеширования MD5, только чтобы понять, что я предполагал сетевой порядок байтов (Big Endian), в то время как Рональд Ривест предполагал (без указания этого в RFC), что разработчик будет использовать Little Порядок байтов в порядке байтов.
Напомни мне как-нибудь обидеть этого человека. :-П
Не говоря уже о том, что вы отвечаете на комментарий, сделанный более десяти лет назад, я думаю, что у нас с вами разные определения слова «тщательно». На мой взгляд, «кропотливо» прорабатываю предмет в деталях. Это не расплывчатое определение в начале документа, в котором никогда не используется термин «порядок байтов». ;-)
Надоедливый x86 засоряет мои регистры памяти своими указателями на сегменты! ;)
Я считаю, что вам больше не нужно переводить слова между ПК и Mac, если вы отказываетесь от обратной совместимости с PowerPC.
Что ж, на самом деле осталось много процессоров с прямым порядком байтов.
Собственно КПП не умерла. Вы знаете, что Xbox360 использует процессоры PPC (и это хороший пример того, что эти процессоры не так плохи, как их репутация - Xbox360 совсем не медленный). Хорошо, это не может считаться ПК.
Но считается ли сервер ПК? По-прежнему существует множество серверов, использующих процессоры Sun UltraSparc, которые обычно имеют прямой порядок байтов, хотя последние модели могут быть либо с прямым, либо с обратным порядком байтов. Существует множество процессоров, которые могут быть одним или другим (например, ARM, который все еще используется во многих устройствах, таких как мобильные телефоны и т. П.), Поскольку поддержка обоих обеспечивает максимальную гибкость для оборудования и поставщиков программного обеспечения. Даже процессоры IA64 (Intanium, который был предназначен для замены x86 до того, как AMD изобрела x86-64, который был истинным 64-битным и мог эмулировать только 32-битный, в отличие от x86-64, который может быть и тем, и другим) является одним из процессоров, которые могут быть переключился на прямой порядок байтов. Процессоры, которые могут быть и тем, и другим, называются bi-endian.
На самом деле, если вы на секунду проигнорируете Intel (и совместимые процессоры), большинство процессоров на рынке будут либо с прямым порядком байтов, либо, по крайней мере, с обратным порядком байтов, хотя, насколько мне известно, большинство из них не используются ни на каких потребительских ПК.
Однако я не вижу проблемы с порядком байтов, как многие программисты. Каждый современный процессор может аппаратно менять порядок байтов. Фактически, если вы напишете программу на процессоре Intel с прямым порядком байтов, которая меняет местами порядок следования каждого целого числа, считываемого из памяти, и снова при записи обратно в память, это может привести к снижению производительности всего на 5%; и на практике вам нужно только поменять местами порядок байтов для данных, входящих и исходящих из вашего приложения, поскольку в вашем приложении, конечно, постоянный порядок байтов.
Также обратите внимание: Почти все известные мне сетевые протоколы определяют порядок байтов с прямым порядком байтов, TCP / IP - наиболее знакомое семейство. Поэтому, если вы работаете с нижними сетевыми уровнями, вам всегда придется продолжать обмениваться байтами.
Я никогда не видел, чтобы IA64 работал в режиме прямого байта. Это не двузначный порядок байтов, просто немного двузначный.
К вашему сведению, Xbox 360 использует свой ЦП PPC в режиме прямого байта.
Я думал о том же вопросе: поскольку Mac теперь являются Intel, проблема с порядком байтов мертва? Неа. Помимо некоторых суперкомпьютеров (с которыми, давайте посмотрим правде в глаза, нам, неспециалистам, никогда не придется иметь дело), есть еще одна важная область, где используется прямой порядок байтов: сетевые протоколы, в частности: Интернет-протокол (например, "IP" TCP / IP).
Сейчас, более чем когда-либо, вероятность того, что главный компьютер человека будет настольным, работает под управлением операционной системы общего назначения, меньше, чем когда-либо. Хотя это все еще довольно распространено, многие другие люди используют смартфоны или устройства UMPC, которые специально созданы, то есть для просмотра веб-страниц. Эти платформы не обязательно имеют процессоры x86. Чаще, особенно со смартфонами, они используют ядро ARM с прямым порядком байтов.
Фактически, RFC 1321 тщательно разъясняет порядок байтов («каждая последующая группа из четырех байтов интерпретируется как слово, в котором первым идет младший (наименее значимый) байт»). Надеюсь, ты не причинил ему вреда!