Znak podkreślenia

Z Wikipedii, wolnej encyklopedii
Skocz do: nawigacji, wyszukiwania

Znak podkreślenia (_), potocznie podkreślnik dolny — znak posiadający kod ASCII tego znaku to dziesiętnie 95 lub 0x5F szesnastkowo. Pojawił się po raz pierwszy na klawiaturach maszyn do pisania. Znaczenie tego znaku zmieniało się w zależności od kontekstu użycia.

Pozycja znaku na klawiaturze[edytuj | edytuj kod]

W układzie QWERTY znak podkreślenia jest dostępny po naciśnięciu klawisza - umiejscowionego między klawiszami 0 i , oraz klawisza Shift.

W układzie klawiatury QWERTZ, powszechnie używanym w Niemczech i Austrii, znak podkreślenia jest dostępny po naciśnięciu klawisza Shift oraz klawisza - położonego pomiędzy klawiszami . oraz .

We francuskim układzie klawiatury AZERTY, znak podkreślenia jest dostępny przez naciśnięcie klawisza 8, rząd wyżej, pomiędzy literami U oraz I.

Użycie znaku podkreślenia[edytuj | edytuj kod]

Użycie w maszynach do pisania[edytuj | edytuj kod]

Na klawiaturach maszyn do pisania ten znak był stosowany przede wszystkim do podkreślania słów. Podkreślanie polegało na ustawieniu wózka maszyny do pisania w miejscu, w którym należało rozpocząć podkreślanie, a następnie wpisywano znak podkreślenia aż do ostatniego znaku fragmentu do podkreślenia. Podkreślanie było jedyną metodą bezpośredniego formatowania tekstu w maszynach do pisania.

Użycie w komputerach[edytuj | edytuj kod]

Początki[edytuj | edytuj kod]

W programach znaczącej wielkości, konieczne jest używanie identyfikatorów opisowych złożonych z wielu słów, takich jak „previous balance” lub „end of file”. Jednakże spacje zwykle nie są dozwolone wewnątrz nazw identyfikatorów, ponieważ są one traktowane jako ograniczniki słów kluczowych. Pisanie słów razem, na przykład „endoffile” nie jest odpowiednie, ponieważ nazwy stają się nieczytelne. Dlatego też w COBOL dozwolone jest użycie łącznika („-”) między słowami tworzącymi identyfikatory, jak w „END-OF-FILE”. Lisp również zezwalał na łącznika w nazwach, traktując operator odejmowania jako identyfikator.

Większość języków programowania interpretuje łącznik jako operator odejmowania i nie pozwala na użycie znak w nazwie identyfikatora. Powszechnie używane zestawy znaków w kartach dziurkowanych na początku lat 60. XX wieku nie miały małych liter i znaków specjalnych, które byłyby odpowiednie do oddzielania wyrazów w identyfikatorach. Kodowanie znaków EBCDIC wprowadzone przez IBM w 1964 roku wraz z serią komputerów IBM System/360, korzysta z 8 bitów na bajt.

Niewielki wzrost w wielkości kodowania znaków w stosunku do wcześniejszych pozwolił na dodanie kilku znaków przestankowych, włącznie ze znakiem podkreślenia, które IBM uznało za znak podziału wyrazów, ale pisanych wyłącznie dużymi literami. W późniejszych wydaniach EBCDIC dodano małe litery. Raport IBM dotyczący NPL (pierwotnej nazwy języka programowania PL/I) pozostawia zestaw znaków niezdefiniowanych, ale wyraźnie uwzględnia znak łamania linii i podaje jako przykład identyfikatora RATE_OF_PAY[1]. W roku 1967 podkreślenia został włączony do ASCII[2], zastępując podobnie wyglądający znak strzałki w lewo (←) o kodzie 95 (szesnastkowo 5F) w ASCII-1963 (zobacz również: PIP). Opracowany w Bell Labs na początku lat 70. XX wieku język programowania C umożliwia użycie znaku podkreślenia jako znaku alfanumerycznego[3]

Historyczne[edytuj | edytuj kod]

  • W tekstowych interfejsach użytkownika (na przykład VT100, mainframe, ncurses), znak podkreślenia jest używany jako symbol pól. Wraz z wprowadzeniem graficznego interfejsu użytkownika jego znaczenie zmalało.
  • W starszych wersjach programów do edycji tekstu, takich jak Microsoft Word dla DOS, podkreślenia było używane do wyróżnienia tekstu kursywą przez postawienie znaku podkreślenia na początku i na końcu tekstu, ale tekst w kursywie był widoczny tylko w wydruku. Ze względu na zachowanie zgodności, wiele programów do edycji tekstu udostępnia tę funkcję. Przykład użycia:
Podczas pisania Wydruk
Napisać do pana _Müllera_ Napisać do pana Müllera

Współczesne[edytuj | edytuj kod]

  • W adresach URL (zasobów internetowych oraz zasobów lokalnych) spacje i inne znaki specjalne wymagają zapisu pod postacią kodu (dla spacji kod szesnastkowy to %20), dlatego znak podkreślenia jest używany w tym znaczeniu.
  • W Usenecie i innych tekstowych mediach, takich jak IRC, znak podkreślenia jest używany do wyróżniania słów, ponieważ formatowanie tekstu nie jest technicznie możliwe, np. _Tobie_ będzie wszystko jedno!
  • W IRC, znak podkreślenia często umieszcza się za nickiem, jeżeli nazwa jest już zajęta. Na przykład osoba, która chce zalogować się jako „Max” na serwerze, ale ta nazwa jest już zajęta, może użyć nicka „MAX_”.
  • Szereg znaków podkreślenia może zostać użyty do tworzenia linii dzielących lub oznaczania obszaru, który należy uzupełnić.
  • W niektórych przypadkach, znak podkreślenia jest używany jako wieloznacznik i reprezentuje pojedynczy znak (np. w SQL). Ponadto znak podkreślenia jest używany do dziś na całym świecie jako substytut spacji, tam gdzie nie jest to dozwolone, na przykład adresy e-mail, nazw zmiennych lub nazwy plików. Należy jednak pamiętać, że ze względu na różne pozycje spacji i znaku podkreślenia w kodowaniu ASCII, kolejność sortowania jest inna. Jest to szczególnie widoczne w specyfikacji systemu plików płyt CD-ROM ISO 9660, w której znak podkreślenia jest uznany za znak zastępujący spację.

Zobacz też[edytuj | edytuj kod]

Przypisy

  1. NPL Technical Report. IBM, 1964, s. 23. [dostęp 2011-06-09]. (ang.)
  2. Eric Fischer. The Evolution of Character Codes, 1874-1968. (ang.). [dostęp 9 czerwca 2011]. 
  3. Dennis Ritchie. C Reference Manual. , 1975? (ang.). [dostęp 9 czerwca 2011].