Just to jump back a bit... Morse and binary are two very, very, very different things.
- Morse is a character encoding system. Binary is a base-2 numbering system.
- Binary has two symbols, 0 and 1. Morse, believe it or not, has four. Dit, dah, character separation, word separation.
- p/P in morse is dit dah dah dit. p/P in Binary doesn't exist. This is because Morse encodes (some) data. Binary does not.
- Seriously. p/P doesn't exist, nor does any character in binary. "But we got encoded messages from binary in the videos!". No you didn't. You got the binary numbers, grouped them into a different base number (either hex or decimal) then looked up an ASCII chart to see what characters those numbers represented under that encoding system. That's one encoding step (english characters -> numbers via conversion to ASCII) and then changing the base of the number system you use to represent those numbers.
It is true Binary can be *used* to represent everything. But any combination of numbering or character encoding scheme can, and fundamentally, binary is pretty ineffective. It's only considered "universal" due to the prevalence of digital computing given there's only two states a switch in an electronic circuit can exist in; on and off. Despite that technical limitation, there's no reason we *couldn't* represent everything in, say, base 4, except it wouldn't represent anything like the physical switching going on and so it would just confuse the bejeezus out of people.
tl;dr Calling morse and binary "essentially the same" is like calling gzip compression and roman numerals "essentially the same*"
*Although inline with
these sorts of things, I'm certain there'd be an interest in an esoteric compression algorithm which compresses data into roman numerals
To try and illustrate it, think of an encoding method as a function, but don't confuse it with simply changing the base of a number.
So, an ASCII funciton ascii(65) = A, and the integer inverse i_ascii(A) = 65, and the hex inverse h_ascii(A) = 0x41
Likewise, converting between number bases works with numbers only. binary(65) =
00000100 00000001. But binary(A) does not work, only binary(i_ascii(A))
morse(P) = .--., and inv_morse(.--.) = P. In the same example as above, you *cannot* say binary(.--.). You must go binary(i_ascii(inv_morse(.--.)))