Кіріспе

Барлық биттері 0 болатын бақылау символы — Нөл символы (сонымен қатар нөлдік терминатор) — нөлдік мәні бар бақылау символы. Ол көптеген таңбалар жиынтығында кездеседі, оның ішінде Baudot және ITA2 кодтары, ISO/IEC 646 (немесе ASCII), C0 бақылау коды, Универсалды кодталған таңбалар жиынтығы (немесе Unicode) және EBCDIC. Ол дерлік барлық негізгі бағдарламалау тілдерінде қолжетімді. Көбінесе NUL (немесе NULL) деп қысқартылады, бірақ кейбір жағдайларда бұл термин нөлдік көрсеткішті білдіреді. 8 биттік кодта ол нөлдік байт деп аталады. Бұл таңбаның бастапқы мағынасы NOP сияқты болған — принтерге немесе терминалға жіберілгенде ол ешқандай әсер етпейді (бірақ кейбір терминалдар оны қате түрде бос орын ретінде көрсетеді). Электромеханикалық телепринтерлер компьютерлік шығыс құрылғылары ретінде қолданылған кезде, әрбір басылған жолдың соңында бір немесе бірнеше нөлдік таңба жіберілді, бұл механизмге келесі жолдағы бірінші баспа позициясына оралу үшін уақыт берді. Пункциялық таспаларда бұл таңба мүлдем тесіксіз бейнеленеді, сондықтан жаңа перфорацияланбаған таспа бастапқыда нөлдік таңбалармен толтырылады, ал көбінесе мәтінді нөлдік таңбалардың резервтелген орнына, таспаға жаңа таңбаларды соғу арқылы енгізуге болады. Бүгінде бұл таңба C бағдарламалау тілінде және оның туындыларында, сондай-ақ көптеген деректер форматтарында маңызды рөл атқарады, ол жолдың соңының белгісі ретінде қолданылады, көбінесе нөлдік аяқталған жол деп аталады. Бұл жолға тек бір байттық қосымша шығынмен кез келген ұзындықты алуға мүмкіндік береді; санауды сақтаудың баламасы 255 ұзындық шегін немесе бір байттан астам қосымша шығынды талап етеді (нөлдік аяқталған жол туралы мақалада басқа да артықшылықтары мен кемшіліктері сипатталған).

Өкілдік

Түп кодта нөлдік таңба жиі қашу тізбегі \0 ретінде жолдардағы әдебиеттерде (мысалы, "abc\0def") немесе таңба тұрақтыларында ('\0') көрсетіледі; соңғысы 0 ретінде де жазылуы мүмкін (тырнақшасыз және слэшсіз). Көптеген тілдерде (мысалы, осы белгілемені енгізген C тілінде) бұл жеке қашу тізбегі емес, бір окталық цифры 0 болатын окталық қашу тізбегі; соның салдарынан, \0 0-ден 7-ге дейінгі цифрлардың ешқайсысынан кейін келмеуі керек, әйтпесе ол ұзақ окталық қашу тізбегінің басталуы ретінде қабылданады. Әртүрлі тілдерде қолданылатын басқа қашу тізбектері: \000, \x00, \z немесе \u0000. URL-ге %00 проценттік коды арқылы нөлдік таңбаны қоюға болады. Нөлдік таңбаны бейнелеу мүмкіндігі әрқашан нәтижедегі жолдың дұрыс түсіндіріледін білдірмейді, себебі көптеген бағдарламалар нөлді жолдың соңы деп есептейді. Осылайша, оны теру мүмкіндігі (тексерілмеген пайдаланушы енгізуінің жағдайында) нөлдік байт инъекциясы деп аталатын осалдық тудырады және қауіпсіздік бұзушылықтарына әкелуі мүмкін. Карет белгісінде нөлдік таңба ^@ болып көрсетіледі. Кейбір пернетақталарда нөлдік таңбаны басып тұрып, пернесін басу арқылы енгізуге болады (АҚШ макеттерінде көбінесе тек пернесі жеткілікті, @ белгісін алу үшін қосымша пернесінің қажеті жоқ). Нөл үшін он алтылық жазуы 00. Base64 жолы AA== де кодтау нөлдік таңбаны береді. Документацияда нөлдік таңба кейде "NUL" әріптерін қамтитын бір em ені символы ретінде бейнеленеді. Юникодта осыған арналған таңба бар: .

Кодтау

Барлық заманауи таңбалар жиынтықтарында бос таңбаның кодтық нүктесі нөлге тең. Көптеген кодтауларда бұл нөлдік мәні бар бір код бірлігіне аударылады. Мысалы, UTF-8-де ол бір нөлдік байт. Дегенмен, өзгертілген UTF-8-де бос таңба екі байт ретінде кодталады: бұл нөлдік мәнді байтты, енді ешқандай таңба үшін қолданылмағандықтан, жол аяқтағышы ретінде пайдалануға мүмкіндік береді.