我无法理解从十六进制到int和int到十六进制的转换。值t0
或6713707
如何等于6,713,707
?如何从一个到另一个?
这是我在调试器中看到的:
如果我将红色,绿色和蓝色加在一起,我会得到:
0x66716b
如果我将这三个值乘以:
102 + 113 + 107 = 322;
102 * 113 * 107 = 1,233,282;
来自何处?你能告诉我你的工作吗?
背景
我正在处理颜色,在HTML和CSS中你使用#FF0000代表红色。但是在JavaScript和ActionScript中,当您访问这些颜色时,它们将返回int和数字。
答案 0 :(得分:1)
0x66716b只是串联,如果红色(66),绿色(67)和蓝色(6b)十六进制值,0x是一种说法“这是十六进制而非十进制”(这就是为什么有[0x ## ]调试器中小数旁边的值)
我很确定6713707就是你将66716b以十六进制转换为十进制,即IEG。 1 x b(b = 11)+ 16 x 6 + 256 x 1 + 4096 x 7 + ....(我没有计算器来确定/做其余的事。)
希望我帮助过!
答案 1 :(得分:0)
RGB值是三个八位值,形成32位值的低24位(高八位有时称为" alpha通道")。因此,您的完整32位十六进制值为0x0066716b。 Converting hex to decimal给出值6713707.