I am just learning C# and looking deeper into data types.
Why isn't a bool
data type 1 bit in size?
It seems it can only hold one of two values (true or false), so wouldn't that only take up 1 bit of space to represent that value?
Is it because the smallest 'addressable' size of a value is a byte (8 bits) as referred to in this post?
My overall aim was to logically envisage the different size of each data type in C# so I was trying to create a list of all data types and their allocated bit size and this threw me.
Is it because the smallest 'addressable' size of a value is a byte
Yep, exactly the same thing. In order for the CLR to be efficient, it maps its data types to the native machine data types in much the same way as the compiler does in C++ (pretty much).