Video: Coding Challenge #1: Starfield in Processing 2024
Alles in de computer wordt weergegeven door een patroon van enen en nullen - variaties in voltage die worden geïnterpreteerd als getallen. Aldus is het bitpatroon 0000 0001 het nummer 1 wanneer geïnterpreteerd als een geheel getal. Ditzelfde bitpatroon betekent echter iets heel anders wanneer het wordt geïnterpreteerd als een instructie van de processor.
Het zou dus geen verrassing moeten zijn dat de computer de karakters van het alfabet codeert door elk een nummer toe te wijzen.
Beschouw het teken 'A'. U zou het elke gewenste waarde kunnen toewijzen zolang we het allemaal eens zijn over de waarde. U kunt bijvoorbeeld een waarde van 1 toewijzen aan 'A' als u dat wilt. Logischerwijs kunt u de waarde 2 dan toewijzen aan 'B', 3 aan 'C', enzovoort.
In dit schema krijgt 'Z' de waarde 26. U kunt dan opnieuw beginnen door de waarde 27 toe te wijzen aan 'a', 28 aan 'b', helemaal tot 52 voor 'z'. Dat laat nog steeds de cijfers '0' t / m '9' plus alle speciale symbolen zoals spatie, punt, komma, schuine streep, puntkomma en de grappige tekens die u ziet wanneer u op de cijfertoetsen drukt terwijl u Shift ingedrukt houdt.
Voeg daar de niet-afdrukbare tekens aan toe, zoals het tabblad en de nieuwe regel. Wanneer alles gezegd en gedaan is, zou je het volledige Engelse toetsenbord kunnen coderen met getallen tussen 1 en 127.
De ASCII-tekenset
Char | Waarde | Char | 0 |
---|---|---|---|
NULL | 64 | @ | 1 |
Start van kop < 65 | A | 2 | Begin van tekst |
66 | B | 3 | Einde van tekst |
67 | C | 4 | Einde van verzending |
68 | D | 5 | Verzoek |
69 | E | 6 | Erkenning |
70 | F | 7 | Bell |
71 | G | 8 | Backspace |
72 | H | 9 | Tab |
73 | I | 10 | Newline < 74 |
J | 11 | Verticale tab | 75 |
K | 12 | Nieuwe pagina; Form Feed | 76 |
L | 13 | Carriage Return | 77 |
M | 14 | Shift Out | 78 |
N | 15 > Shift In | 79 | O |
16 | Data Link Escape | 80 | P |
17 | Apparaatbeheer 1 | 81 | Q |
18 | Apparaatbeheer 2 | 82 | R |
19 | Apparaatbeheer 3 | 83 | S |
20 | Apparaatbeheer 4 | 84 | T |
21 | Negatief Erkenning | 85 | U |
22 | Synchroon niet actief | 86 | V |
23 | Einde verzending | 87 < W | 24 |
Annuleren | 88 | X | 25 |
Einde van medium | 89 | Y | 26 |
Vervangende | 90 < Z | 27 | Escape |
91 | [ | 28 | Bestandsscheiding |
92 | 29 | Groepsscheidingsteken | 93 |
] < 30 | Record Separator | 94 | |
^ | 31 | Unit Separator | 95 |
_ | 32 | Space | 96 |
'< 33 | ! | 97 | a |
34 | “ | 98 | b |
35 | # | 99 | c |
36 | $ > 100 | d | 37 |
% | 101 | e | 38 |
en | 102 | f | 39 |
' | 103 | g | 40 |
( | 104 | h | 41 |
) | 105 | i | 42 |
* | 106 > j | 43 | + |
107 | k | 44 | , |
108 | l | 45 | = |
109 | m | 46 | . |
110 | n | 47 | / |
111 | o | 48 | 0 |
112 | p | 49 | 1 > 113 |
q | 50 | 2 | 114 |
r | 51 | 3 | 115 |
en | 52 | 4 | 116 |
t | 53 | 5 | 117 |
u | 54 | 6 | 118 |
v | 55 | 7 | 119 > w |
56 | 8 | 120 | x |
57 | 9 | 121 | y |
58 | : | 122 | z |
59 | ; | 123 | { |
60 | << 124 | | | 61 |
= | 125 | } | 62 >> > 126 |
~ | 63 | ? | 127 |
DEL | Het eerste dat opvalt, is dat de eerste 32 tekens de "niet-afdrukbare" karakters zijn. Dat betekent niet dat deze personages zo ondeugend zijn dat de censuur niet toestaat dat ze worden afgedrukt - het betekent dat ze niet als zichtbare symbolen verschijnen wanneer ze op de printer worden afgedrukt (of op de console). Veel van deze tekens worden niet langer gebruikt of alleen op onbekende manieren gebruikt. | Teken 25 "Einde van medium" is bijvoorbeeld waarschijnlijk afgedrukt als het laatste teken vóór het einde van een magneetrol. Dat was een groot probleem in 1963, maar vandaag … niet zozeer, dus het gebruik van het personage is beperkt. | De tekens die beginnen met 32 kunnen allemaal worden afgedrukt met uitzondering van de laatste, 127, wat het teken Verwijderen is. |