Cannot understand Block Cipher example I learned modern block cipher and saw this example.

How many padding bits must be added to a message of 100 characters if
8-bit ASCII is used for encoding and the block cipher accepts blocks
of 64 bits?

There was a solution, but I totally didn't understand.

Solution
Encoding 100 characters using 8-bit ASCII results in an 800-bit
message. The plaintext must be divisible by 64. If |M| and |Pad| are
the length of the message and the lengeth of the padding.
|M| + |Pad| = 0 mod 64 --&gt; |Pad| = - 800 mod 64 --&gt; 32 mod 64

What I'm curious are following questions..

Why encoding 8 characters using 8-bit ASCII results in 800-bit message?
What padding means?
What last sentence means? (difficult to understand)
Why encoding 8 characters using 8-bit ASCII results in 800-bit message?  

That is not correct, 8 ASCII characters is 8-bytes times 8-bits per byte which is 64-bits.

The question seems to be: Encoding 100 characters using 8-bit ASCII results in an 800-bit message.

That is 100 ASCII characters is 100-bytes times 8-bits per byte is 800-bits.
What padding means?
Since block based encryption with a block mode such as ECB or CBC means that the input must a  multiple of the block size because the data is processed one block at a time and partial blocks can not be processed.
What last sentence means? (difficult to understand)
Basically answered above.
See Padding (cryptography)
and especially: PKCS#5.


Note: ASCII is one 8-bit byte per character—only.