Порядковый номер - это концепция на уровне слов, в которой байты либо хранятся в старшем значащем байте (старший порядковый номер), либо в младшем значащем байте сначала (младший порядок). Данные, передаваемые по сети, обычно с прямым порядком байтов (так называемый сетевой порядок байтов). Данные, хранящиеся в памяти на машине, могут располагаться в любом порядке, причем порядок байтов не является наиболее распространенным, учитывая преобладание архитектуры Intel x86. Несмотря на то, что большинство компьютерных архитектур имеют порядок байтов, x86 настолько распространен, что вы чаще всего будете видеть в памяти данные с прямым порядком байтов.
Во всяком случае, смысл всего того, что порядковый номер является очень специфической концепцией, которая применяется только на уровне байтов, а не на уровне битов. Если ntohs()
, ntohl()
, htons()
и htonl()
не делают то, что вы хотите, то то, с чем вы имеете дело, не является порядком байтов как таковым.
Если вам нужно обратить вспять отдельные биты вашего неподписанного длинного или сделать что-нибудь еще сложное, как это, пожалуйста, опубликуйте больше информации о том, что именно вам нужно сделать.