打印
[ZLG-MCU]

大端与小端的差异?big endian and little endian

[复制链接]
1510|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
erlking|  楼主 | 2008-7-7 16:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
下面这段代码,如果分别在大端和小端机上运行,结果会有什么差异呢?

static WORD32 F(WORD32 data, WORD32 key) 

 WORD32 t; 
  BYTE v[4], u; 
 
  /* Key Insersion */ 
  t = data+key; 
  
  /* Secret Constant */ 
  v[3] = (BYTE)((t>>24)&0xff); 
  v[2] = (BYTE)((t>>16)&0xff); 
  v[1] = (BYTE)((t>> 8)&0xff); 
  v[0] = SecretConstant[t&0xff]; 
  u = v[0]^0x65;  v[1] ^= lrot8(u,1); 
  u = v[0]^0x2b;  v[2] ^= lrot8(u,5); 
  u = v[0]^0xc9;  v[3] ^= lrot8(u,2); 
  
  /* Rotate */ 
  t = ((WORD32)v[3]<<24)|((WORD32)v[2]<<16)|((WORD32)v[1]<<8)|(WORD32)v[0]; 
  t ^= lrot32(t,9) ^ lrot32(t,22); 
  
 return t; 

相关帖子

沙发
wlq_9| | 2008-7-8 15:15 | 只看该作者

这个程序不涉及

大不端的问题.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

12

帖子

0

粉丝