"死牛肉"是什么意思?

Xi *_*ang 85 ipv6

"死牛肉"这个词是什么意思?我是从面试问题中读到的.它与ipv6有关.我想它可能是一个随机的十六进制数字用于例子,如"快速的棕色狐狸跳过懒狗".

我的理解是否正确?或者它有更重要的意义?

Dus*_*ine 98

http://en.wikipedia.org/wiki/Hexspeak
http://www.urbandictionary.com/define.php?term=dead%3Abeef

"死牛肉"在编程中是一个非常流行的句子,因为它仅使用字母af构建,其以十六进制表示法使用.句子开头和中间的冒号使这句话成为(理论上)有效的IPv6地址.

  • 确保即使链接的网站不再存在,答案仍然存在.维基百科总是在变化,并且由于不同的原因([孩子]色情/"错误的"真相)在一些国家被封锁了.所以最好让你的答案独立,只使用链接进行详细的答案/引用.只是我的两分钱. (43认同)

Mar*_*ers 43

它是仅使用字母AF的组合表达式,通常在需要可识别的十六进制数时使用.某些系统将其用于各种目的,例如显示已释放且不应再次引用的内存.在调试器中,此值显示可能表示您发生了错误.来自维基百科:

0xDEADBEEF("死牛肉")由IBM RS/6000系统,32位PowerPC处理器上的Mac OS和Commodore Amiga使用,作为神奇的调试值.在Sun Microsystems的Solaris上,它标记了释放的内核内存.在Alpha处理器上运行的OpenVMS上,按CTRL-T可以看到DEAD_BEEF.

数字0xDEADBEEF等于不易识别的十进制数3735928559(无符号)或-559038737(有符号).

  • 但55378008倒挂怎么样?(无符号) (20认同)

BSa*_*ita 37

0xDEADBEEF的值有三个实际好处,主要用于旧系统.像我这样的旧汇编程序/ C黑客会使用它来填充未分配的内存以哄骗内存问题.此外,这是俚语"死肉"的双关语.如果DEADBEEF在他的指针中结束,程序员就死了.我祝贺那个第一个想到使用价值DEADBEEF的人.它在很多方面都很聪明.

至于实际原因,首先,它在十六进制内存转储中更明显,因为它实际上拼写单词而不是随机十六进制值.

其次,如果值在指针中结束,则更有可能引发内存超出范围的错误.DEADBEEF的地址超出了系统的地址范围(我们现在谈论的是上个世纪的系统),无论系统的endian如何.

第三,它更有可能在需要偶数边界指针值来访问16/32/64位数据的系统上引发故障.该值更可能出错,因为两个16位值(DEAD,BEEF)都是奇数.


Mar*_*itl 16

由于IPv6-Adresses是用Hex-notation编写的,因此您可以在Adresses中使用"Hexspeak"(数字0-9和字母af).

您可以使用许多单词作为有效地址来更好地理解它们.

如果你ping6 www.facebook.com -n得到类似"2a03:2880:f01c:601:face:b00c:0:1"的东西.

这里有些例子:

  • :affe ::(Affe - 猴子的德语 - 在管理委员会的vlan上看到)
  • :1bad:宝贝::(一个坏宝贝 - 在smtp-honeypot看到)
  • :badc:ab1e ::(坏电缆 - 被视为不安全vlan的子网)
  • :da7a ::(数据 - 见文件服务器)
  • :d1a1 ::(拨号 - 看到VPN拨入)


Sco*_*ott 13

它也用于调试目的.

以下是其中一些值的便捷列表:

http://en.wikipedia.org/wiki/Magic_number_%28programming%29#Magic_debug_values