Digital transmission

Semaphore networks, the Internet, and Morse Code

Jack Holland
Understanding computer science
5 min readFeb 8, 2014

--

This is an ongoing series. Please check out the collection for the rest of the articles.

Post office engineers transmitting a wireless telegraph

The telegraph is a fantastic invention. It allows us to communicate detailed, complex messages across vast distances purely by sending and receiving special signals. No letters or packages are required; for instance, optical telegraphs communicate through sight and electrical telegraphs communicate through electrical signals. In either case, the message travels much faster than mail can ever go.

Lest you think that the legacy of telegraphy is limited to black and white photos of dapper gentlemen fussing with quirky machines, note that communication via the Internet is a great example of modern telegraphy. Anytime you send a message over the Internet, you’re taking advantage of telegraphy; specifically, you’re converting a message into signals that fly across the world. When the signals reach their destination, the receiver converts them back into the original message. Of course, in modern times our computers handle the whole conversion business. From the perspective of the message sender, their message is simply sent and received and that’s that.

A semaphore designed by Claude Chappe; the wooden structure at the top can be rearranged to represent different letters

But let’s empathize with the computer for a bit. Just how do you convert a message into a sequence of signals? Whether you’re using a semaphore network (which is a fancy term for a bunch of towers that flash shapes at each other to communicate) or the Internet, you need a method, or algorithm, that converts your message into transmittable signals. We’re not going to discuss the physical mechanism of transmitting the message — whether you use towers, telegraphs, or email — our concern now is the semantic mechanism, or algorithm.

Before I explain further, I need to make a distinction; there are two main kinds of signal transmission: analog and digital. We’re not going to talk about analog transmission right now; instead we’ll cover digital transmission, which is more relevant to our current goals. What is digital transmission, you ask? It’s when you convert a message into digits like 0 and 1. It’s how semaphores, electrical telegraphs, the Internet, and many other communication devices communicate information. It’s our semantic mechanism. Here’s a famous example of a digital code:

· · · - - - · · ·

That’s how you say SOS in Morse code. Send that message through a telegraph and help is on its way (hopefully!). The digits of Morse code are the dot (.) and dash (-). With such a limited vocabulary, you might expect Morse code to have limited communication abilities. But that couldn’t be further from the truth! You can communicate any message you want using Morse code. Having to manually punch in dashes and dots isn’t very convenient, but the code certainly works. And its widespread use in military and civilian contexts is pretty convincing social proof that it’s an effective way to communicate, especially when the parties involved don’t have access to smartphones or satellites.

We’re not going to delve into the details of Morse code (although it’s cool enough that we might do it down the road), but I wanted to introduce it to demonstrate that communication systems don’t need to be complex and elaborate to work. In fact, the simplicity of a system is often its most important strength.

The relevance of Morse code for us now is that electronic computers use a system that is in many ways similar to it. Rather than dots and dashes, electronic computers use the digits 0 and 1. But whether you call a digit “.” or “0” doesn’t affect how it works; if the only difference between two systems is their naming conventions, then the two systems are very likely interchangeable. To clarify, there are important differences between how a Morse-code-using telegraph and an electronic computer communicate information, but naming digits differently is hardly worth mentioning. Whether you’re preparing to send your message over a telegraph or over the Internet, the algorithm that converts your message to signals will be astonishingly similar.

So how do these mysterious algorithms work? Let me show you how Morse code does it:

International Morse code

Do you see what’s going on? Each letter and number gets its own unique combination of dots and dashes. If you want to transmit “A”, then send “.-”. If you want to transmit “4”, then send “…-”. When the message is received, look up what “.-” means and “A” comes up; look up what “…-” means and “4” comes up.

A very popular and standard code used on electronic computers, called ASCII, uses a similar idea. Each letter, number, and symbol gets its own sequence of 0s and 1s. For instance, “A” is 1000001, “4" is 101010, and “~” is 1111110. You can see the full chart here, but it’s not very interesting without more background information (when we cover binary numbers in more detail, I’ll show you some brilliant design features that ASCII uses). The beauty is that whether you’re frantically sending “SOS” as your ship sinks or casually texting your friend, the messages you send are converted to signals very similarly. In both cases, your message’s words are broken into individual characters and those characters are converted into a sequence of digits. Everything from “How are you?” to the works of Shakespeare can be expressed as a sequence of digits. That’s pretty cool.

Next post, we’ll delve more deeply into how ASCII turns characters into 0s and 1s and then show how to construct words out of individual characters (spoiler: words are just arrays of characters).

--

--