Binary to ASCII
Each group of eight bits is one character code. 01001000 01101001 decodes to "Hi". The groups must be separated: an unbroken run of bits has no way to indicate where each character starts.
How to decode binary to text
The separation requirement is not a limitation of this tool but of the format. A run of 16 bits could be two 8-bit characters or one 16-bit code point, and nothing in the bits themselves says which. Real binary formats solve this with a fixed width or a length prefix; a pasted binary string relies on the spaces you type. That is why every binary-to-text example you see is grouped.
The consequence is worth seeing rather than believing. 0100100001101001 split into two groups decodes to "Hi". The identical bits pasted as one group are read as a single code point, 4869 in hex, which is a CJK ideograph. No error, no warning: just a different and perfectly valid answer to a differently punctuated question.
Within a group the padding does not matter, only the value: 1001000 and 01001000 both give H. Values are read as Unicode code points, which agrees with ASCII for the first 128 characters. If what you have is a stream of UTF-8 bytes rather than characters, reading them one group at a time will produce mojibake, and if the bits are one number rather than text, binary to decimal is the tool.
Questions
Capital H, code 72.
Because nothing in an unbroken bit run says where one character ends and the next begins.
No. Each group is read as a number, so 1001000 and 01001000 both give H.
It becomes one character with that code point. 0100100001101001 in one group is a CJK ideograph; split in two it is "Hi".
Eight for ASCII. Unicode code points above 255 need more.
Only for ASCII characters. Multi-byte UTF-8 sequences read one group at a time give mojibake, not text.