User talk:84.14.148.194

There are several misconceptions being dragged around here, and I apologize in advance if I ever may have added to these 'misconceptions'. I am not an expert, but we cannot tolerate what is clearly wrong. I am sorry if I may be too harsh, but we cannot allow misinformation to spread, even if such was not intended.

So now the goal here is to clarify a few of them, and perhaps rectify the page even further. Both of us have the goal to make this wiki to have the least errors as possible; this is lifeblood of a wiki anyway.

First, it is true 8 bits is 1 byte. But the fact is "most used variables are in the first 128 bytes" is correct.

It should be bytes, not 128 bits as in 7 bytes. The reason being that they need only be referenced by a (signed) pointer, worth 1 byte, whose maximum value, is +127 ( Byte 0 to Byte 127 is worth 128 bytes). Technically this near pointer has a range of -128 to +127 totaling 256 bytes, but the negative range isn't useful in this context. If a variable has an offset farther than +127, then a larger pointer will be required, that is, worth 2 bytes or more. This is like the difference in processing between a char and a short or an int, but within memory addressing.

Second, "8 (double) + 2 (short) + 2 (padding) + 4 (int)" doubles are NOT 8 bits = 1 byte, they are 8 bytes long. shorts are NOT 2 bits = 1/4 byte, they are 2 bytes long. ints are NOT 4 bits = 1/2 byte, they are 4 bytes long. This is very wrong.

The confusion may have arisen when a bool was represented as a 1. What 1? 1 bit? 1 byte? Technically both. A bool is just 1 bit, but it occupies the whole byte. We can think of it as being padded 7 bits, to fill up the whole byte, then padded even further to satisfy the byte-alignment scheme.

So we must clarify this to the reader who most probably is far more confused that us.