# ASCII (American Standard Code for Information Interchange)
**ASCII** (czyt. /ˈæski/) – siedmiobitowy system kodowania znaków, używany we współczesnych komputerach, sieciach komputerowych oraz urządzeniach wyposażonych w mikroprocesory. Standard ten dzieli się na dwie główne części: pierwsze 32 kody (0–31) to znaki sterujące, a kolejne 95 kodów (32–126) reprezentują znaki drukowalne, w tym litery alfabetu łacińskiego, cyfry, znaki przestankowe oraz symbole specjalne. Znak o numerze 127 to specjalny znak `DEL` (usuń).
Zarówno w przypadku kodów sterujących, jak i drukowalnych, każdy znak jest reprezentowany przez 7-bitową liczbę całkowitą. Przykładowo, litera „a” jest kodowana jako liczba 97, a znak spacji jako 32. Standard ASCII został stworzony głównie do obsługi języka angielskiego, przez co nie zawiera m.in. liter diakrytyzowanych, powszechnych w językach europejskich.
## Historia i geneza standardu
Korzenie standardu ASCII sięgają dalekopisów i wczesnych systemów telekomunikacyjnych. Rozwój ASCII opierał się na wcześniejszych kodach, takich jak ITA2 (1924), FIELDATA (1956–57) czy wczesny EBCDIC (1963).
Prace nad stworzeniem kodu rozpoczęły się **6 października 1960 roku**, podczas pierwszego spotkania grupy **X3.2** (obecnie nazywanej ANSI X3L2) w ramach American National Standards Institute (ANSI). Głównym celem było stworzenie uniwersalnego kodu, który umożliwiłby bezproblemowy przepływ informacji między różnymi urządzeniami i systemami.
### Ewolucja i aktualizacje standardu
* **1963 r.** – Został udostępniony pierwszy standard (oznaczony jako ASA X3.4-1963). Odbyła się wówczas kluczowa dyskusja: ostatecznie zdecydowano się na dodanie małych liter alfabetu łacińskiego. Dzięki temu różnica między małą a wielką literą wynosiła zaledwie jeden bit, co znacznie ułatwiało porównywanie tekstów bez uwzględniania wielkości znaków oraz konstruowanie klawiatur.
* **1965 r.** – Przygotowano piąty standard, który jednak nie został opublikowany oficjalnie, lecz wykorzystywany przez niektóre maszyny IBM.
* **1967 r.** – Wprowadzono małe litery oraz dodano nowe znaki (m.in. nawiasy klamrowe `{}` oraz kreskę pionową `|`).
* **1968 r., 1977 r., 1986 r.** – Kolejne uaktualnienia standardu doprowadzające do jego ostatecznej, klasycznej formy.
W **grudniu 2007 roku** standard ten, będący dominującym kodowaniem w internecie, został zastąpiony przez UTF-8, które zapewnia pełną wsteczną kompatybilność z ASCII.
## Założenia projektowe i struktura
Projektanci ASCII musieli rozwiązać szereg złożonych problemów technicznych i użytecznych, biorąc pod uwagę ograniczenia sprzętu tamtych czasów.
### Długość kodu (7-bitowy wymóg)
Rozważano wykorzystanie zarówno 6, jak i 8 bitów na znak. Sześciobitowe kody wymagałyby systemu przeliczania zestawów znaków (tzw. kodów SHIFT), co przy niestabilnych łączach telekomunikacyjnych mogłoby prowadzić do trwałych zniekształceń całych wiadomości. Z kolei ośmiobitowe kody zwiększałyby koszty transmisji i zajmowałyby więcej miejsca na ówczesnych kartach dziurkowanych.
Ostatecznie wybrano format **7-bitowy**, co pozwoliło pomieścić wszystkie niezbędne znaki, uniknąć konieczności używania kodów przełączających i utrzymać rozsądne koszty obsługi infrastruktury.
### Znaki sterujące
Pierwsze 32 pozycje w tabeli ASCII przeznaczono na znaki niedrukowalne, odpowiadające za sterowanie urządzeniami peryferyjnymi, takimi jak dalekopisy czy wczesne drukarki. Obecnie większość z nich przestała być używana, jednak niektóre przetrwały w nowych technologiach:
* **LF (Line Feed, kod 10)** – znak nowej linii (w systemach uniksowych oznaczany jako `\n`).
* **DEL (Delete, kod 127)** – znak usunięcia znaku.
* **CR (Carriage Return, kod 13)** – powrót karetki (w systemach Windows łączony z LF jako `\r\n`).
### Znaki drukowalne i układ klawiatury
Standard ASCII definiuje 95 znaków drukowalnych (wliczając znak spacji). Ich rozkład został ściśle powiązany z układem klawiszy mechanicznych maszyn do pisania, a dokładniej z maszyną Remington No. 2 z 1878 roku.
Cyfry od 1 do 9 zostały sparowane ze znakami przestankowymi (!, @, #, $, %, ^, &, *, (). Z kolei pozycja zerem została zarezerwowana pod spację. Małe i wielkie litery zostały ułożone tak, aby różniły się jednym bitem (pozycje 65–90 to wielkie litery A-Z, a 97–122 to małe litery a-z). Pozycje symboli takich jak nawiasy klamrowe czy kreska pionowa zostały dodane dopiero w 1967 roku.
## Rozszerzenia i ewolucja kodowania
Ponieważ większość współczesnych komputerów operuje na 8-bitowych bajtach, naturalnym krokiem po wprowadzeniu standardu było wykorzystanie ósmego bitu do rozszerzenia tabeli o kolejne 128 znaków. Narodziły się w ten sposób strony kodowe, takie jak norma **ISO 8859** (w tym ISO 8859-2 wspierające alfabet polski) oraz **Windows-125x**.
Rozwiązaniem ostatecznym okazało się jednak powstanie standardu **Unicode (UCS)**. W przeciwieństwie do wielu lokalnych 8-bitowych kodowań, Unicode to uniwersalny system, który obejmuje znaki z niemal wszystkich języków świata. Jego największą zaletą jest pełna **wsteczna kompatybilność z ASCII** – każdy tekst zapisany wyłącznie w standardzie ASCII ma identyczną reprezentację w formacie UTF-8.
## Znaczenie i wpływy społeczno-technologiczne
ASCII przeszedł do historii jako jeden z najważniejszych kamieni milowych we współczesnej informatyce. Jego prostota, determinizm i uniwersalność pozwoliły na stworzenie pierwszych globalnych sieci komputerowych, baz danych i protokołów komunikacyjnych. Nawet dziś, analizując najniższe poziomy działania systemów operacyjnych i protokołów sieciowych (np. nagłówki HTTP, komunikaty API), można zauważyć fundamenty oparte na ASCII.
Warto zaznaczyć pojęciową różnicę funkcjonującą w międzynarodowych standardach: IANA zaleca używanie określenia **US-ASCII**, aby formalnie podkreślić, że standard ten obejmuje jedynie litery alfabetu angielskiego oraz charakterystyczny dla USA układ znaków specjalnych.
📊
Mapa Powiązań
Neural_Network // Co-Mentioned_Entities
📰
Najnowsze Wzmianki
Live_Feed // 1 artykułów
>_ Character AI
Firma // Entity_Profile
[DATA] ASCII (American Standard Code for Information Interchange) to siedmiobitowy system kodowania znaków, będący fundamentem współczesnej informatyki i komunikacji w sieciach komputerowych. Przyporządkowuje on 128 wartościom (0–127) litery, cyfry, znaki przestankowe oraz sterujące, a jego rozszerzenia stworzyły podwaliny pod dzisiejsze standardy, takie jak UTF-8.
[METRICS] Encja posiada 1 wzmianek w bazie oraz 1 powiązanych artykułów. Trust Score: 50/100.
Wersja statyczna dla wyszukiwarek. Pełna wersja interaktywna z grafiką dostępna po włączeniu JavaScript.