8

Not a duplicate of Why does Mark use Hexadecimal to communicate?

ASCII can encode a question mark. Its code in hexadecimal is 3F. Since a question mark only appears once per question and most questions would be fairly long (i.e. many characters) why would Mark Watney waste precision (17 positions vs 16) to save on one code (?, length 1, infrequently used vs 3F, length 2)? Also, it would seem that controlling the rotation in 16ths would be much easier than 17ths as 17 is a prime number whereas 16 positions can be constructed by repeatedly halving the perimeter of a circle. Was this simply dumbing it down for the audience?


First result for "ascii table" on Google:

http://www.asciitable.com/

enter image description here

I see no reason why Mark's ASCII table wouldn't have been at least as comprehensive as this. Unless in the movie universe ASCII is substantially different.

CJ Dennis
  • 3,126
  • 1
  • 20
  • 35
  • 1
    Data vs metadata. Any useful communications protocol requires framing bits. – Lightness Races in Orbit Nov 14 '15 at 15:45
  • @LightnessRacesinOrbit How do you know where/when the framing bits start and end? Wouldn't you need framing bits for them, too? I'm being facetious (ooh! a-e-i-o-u!), but why couldn't they have used pre-existing ASCII codes to signal End Of Text (03), End Of Transmission (04), etc. That's why these codes were built into ASCII in the first place! It seems as though they took a protocol that could already do everything they needed and then reinvented the wheel! – CJ Dennis Nov 15 '15 at 00:51
  • Because it wasn't a "they": it was one guy, a farmer. He did the best he could. Once they'd bootstrapped communications with basic character sequences (and the naive "question mark" approach to provide some level of control), they moved everything on to the proper Pathfinder platform at which point their tapping on a keyboard would have been powered by a proper protocol with all the niceties you just named! – Lightness Races in Orbit Nov 15 '15 at 02:14
  • @LightnessRacesinOrbit In the movie Mark is shown as being pretty knowledgeable about most sciences, but specialising in botany. He specifically goes looking for an ASCII table because he doesn't know which codes correspond to which characters. He had a lot of time to work things out. It seems reasonable that he would have asked himself "Why aren't the first 32 characters used?" "Oh, they're control codes that will work perfectly in my situation - I can use them!" He already knew about hexadecimal and that each ASCII code can be uniquely written as two hexadecimal digits. – CJ Dennis Nov 15 '15 at 02:34
  • 1
    He had an ASCII table; he did not have access to Wikipedia. – Lightness Races in Orbit Nov 15 '15 at 12:50
  • @LightnessRacesinOrbit He didn't need access to Wikipedia. Please provide evidence that his ASCII table did not include the first 32 characters. – CJ Dennis Nov 16 '15 at 01:53
  • 1
    The characters he used are not in question. The manner in which he used them is. Are you sure you're not really nitpicking here now? What problem are you trying to solve, at this point? – Lightness Races in Orbit Nov 16 '15 at 01:55
  • @LightnessRacesinOrbit I haven't read the book, I've only seen the movie. When I was watching it, it really struck me as odd that he used 16 hexadecimal digits + one other symbol (regardless of what the symbol was), since NASA could express anything they wished unambiguously in English with just ASCII. They could even have written "STOP" at the end of each message the way telegraphs used to. Also, no-one has yet addressed why the complexity of 17 symbols would be in preference to the simplicity of 16 symbols. – CJ Dennis Nov 16 '15 at 02:17
  • Yes, they could have done, but it would have been monumentally stupid to be so inefficient in a life-and-death situation such as his. – Lightness Races in Orbit Nov 16 '15 at 02:18
  • That's okay.​​​ – Lightness Races in Orbit Nov 16 '15 at 02:20

1 Answers1

24

It's not supposed to be a question mark card (though that is how the film depicts it).

It's a spot for Mark to post his questions to the NASA team.

From the book, Sol 97, he begins discussing how he's going to send messages:

Time to make an alphabet. But I can't just use the letters A through Z. Twenty-six letters plus my question card would be twenty-seven cards around the lander. Each one would only get 13 degrees of arc.

Then later in the same chapter:

So, I'll make cards for 0 through 9, and A through F. That makes 16 cards to place around the camera, plus the question card.

So, it's a dedicated place for them to aim the camera when they're waiting for a response or to show that they've finished sending their message.

Rand al'Thor
  • 134,408
  • 65
  • 607
  • 854
Catija
  • 1,427
  • 13
  • 19
  • Surely movement vs no movement would suffice? – CJ Dennis Nov 14 '15 at 06:03
  • @CJDennis I'm not saying I think it's necessary... Just quoting the explanation from the book. It does make it very clearly an "end transmission" so Mark knows that the entire message was received. – Catija Nov 14 '15 at 06:08
  • ASCII code 03 stands for End Of Text. There are a few other codes that would work just as well. 26 letters + question makes sense. Hexadecimal + question doesn't. How does he communicate his intent to NASA since he is adding to the existing ASCII code? – CJ Dennis Nov 14 '15 at 06:12
  • @CJDennis They make the same amount of sense, and he's not adding to the ASCII code at all. The "question" space is for Watney to hang a sign and communicate with NASA, all the rest of the spaces are hexadecimal for NASA to communicate with Watney. – Izkata Nov 14 '15 at 07:24
  • 1
    @Izkata OK, that makes a bit more sense. But Mark had full freedom of movement, so he could have just stuck his question in front of the sign that the camera was pointing at when it stopped, e.g. the 3, if NASA were using 03 to signal the end of their information. – CJ Dennis Nov 14 '15 at 07:32
  • @CJDennis That leaves some uncertainty/ambiguity, since now you have direction that has multiple meanings. Best to avoid it entirely. And your suggestion about 03 wouldn't necessarily have worked anyway - Watney would have to know ahead of time that NASA would've used that – Izkata Nov 14 '15 at 08:08
  • @Izkata ASCII (originally developed in the 1960s) defines 03 as End Of Text, which his reference table would have shown. It's the same as saying that Watney would need to know ahead of time that NASA would use 41 for "A". In a way he's known since the 1960s. NASA doesn't need a picture of each symbol each time they turn the camera. They (or Mark) only take a picture when the camera is in its final position, which will always be the same no matter what ASCII code NASA chooses to use (always 03 End Of Text, always 04 End Of Transmission, etc.) – CJ Dennis Nov 14 '15 at 08:19
  • 1
    There are 32 control codes defined by ASCII, but in practice it's quite rare to use more than four of them: backspace, horizontal tab, line feed and escape. Windows computers use a fifth, carriage return, because they use carriage return followed by line feed to indicate a new line rather than just a line feed alone. It's perfectly reasonable for him to ignore all of them entirely. – db48x Nov 14 '15 at 16:00
  • It's also important to emphasize that Watney is a botanist, not a computer scientist. They could have done full Unicode using UTF-8 or another encoding (and technically, they did, since ASCII is a subset of UTF-8). But Watney might not have understood that. Best to stick to the obvious characters that are totally unambiguous. For the most part, that's ASCII 32-127. – Kevin Nov 14 '15 at 23:04
  • 2
    @Kevin In the movie he doesn't find a Unicode/UTF-8 table (which would be huge!), he finds an ASCII table, which suffices for almost all English communication. The movie also shows that he is already familiar with some computer science. He knows about hexadecimal already and goes searching for an ASCII table, neither of which he would know about if he was "only" a botanist. – CJ Dennis Nov 15 '15 at 02:42
  • Read more like a wildcard to me. If he misses something, he has a way of saying "wtf?". – Lightness Races in Orbit Nov 16 '15 at 01:56
  • In my imagination it also serves as a padding character to be interspersed between two identical nibbles in the message, so that he doesn't have to depend on "length of time camera is sitting at one position" to determine whether a nibble is repeated or not. – davidbak Jan 28 '16 at 21:54