W jednym z moich wywiadów, ankieter zapytał mnie, dlaczego wielkie litery są przed małymi literami w tabeli ASCII, szukałem na google.com, ale niczego nie znalazłem, czy ktoś mógłby mi udzielić odpowiedzi? Wielkie dzięki!Dlaczego wielkie litery występują przed małymi literami w tabeli ASCII?
Odpowiedz
Zgaduję tylko, ale wyobrażam sobie, że tak jest, ponieważ najwcześniejsze zestawy znaków komputerowych nie zawierały wcale małych liter. Wielkie litery były domyślne, więc warto je najpierw umieścić.
Ale to zamówienie niekoniecznie musi być zgodne z innymi zestawami znaków. EBCDIC ma najpierw małą literę. Mikrokomputery Commodore miały dwa zestawy znaków w oparciu o starszą wersję ASCII - bez znaków pisanych małymi literami, drugie z odwróconymi dużymi i małymi literami w porównaniu ze standardowym ASCII (tak, że naciśnięcie niezmienionego klawisza literowego zawsze skutkuje tym samym kodem postaci, czy w trybie wielkoformatowym + w trybie graficznym, czy w trybie małych i wielkich liter).
Należy zauważyć, że w ASCII wartość bitu 6 (32-bitowego) informuje o wielkości liter - 0 dla wielkich liter, 1 dla małych liter. Co oznacza, że można uzyskać kod ASCII dla dowolnej litery pisanej małymi literami, dodając 32 do kodu odpowiadającego wielkiemu odpowiednikowi: 65 to A
, więc 65 + 32 = 97 to a
, itp.
Aby upewnić się, że małe litery nie będą t podczas sortowania tekstu pojawiają się przed dużymi literami.
W erze współczesnego Unicode sortowanie tekstu jest znacznie bardziej skomplikowane, ale 20 lat temu można było posortować tekst według wartości ASCII.
Brzmi naprawdę ma sens! ale nie rozumiem znaczenia "i noszę 32-bitową jako coś w rodzaju odwrotnej flagi zmiany", aby wskazać małe litery. ", co to znaczy? jeszcze raz! – Judking
Wielkie litery A są dziesiętne 65, binarne 1000001. Małe litery A są dziesiętne 97, binarne 1100001. Jedyną różnicą jest to, że drugi bit od lewej strony, który zmienił się z 0 na 1. Ten bit ma wartość 32 (dlatego dziesiętny przeszedł od 65 do 65 + 32 = 97), więc nazwałem go "32-bitowym". Działa jako "flaga", ponieważ możesz spojrzeć tylko na ten bit i powiedzieć coś: w tym przypadku, czy litera jest duża czy mała. Przypadek kojarzy się z klawiszem Shift na klawiaturze, więc nazwałem go flagą "przesunięcia" i jest "odwrotnością", ponieważ flaga jest ustawiona (1) dla liter o przesuniętym _un_. –
Mam to. Thx za szczegółowe wyjaśnienie! – Judking