Басқару сипаты - Control character

Жылы есептеу және телекоммуникация, а бақылау кейіпкер немесе баспа емес таңба (NPC) Бұл код нүктесінөмір ) ішінде таңбалар жиынтығы, бұл жазбаша таңбаны білдірмейді. Олар ретінде қолданылады жолақтық сигнал беру мәтінге символ қосудан басқа әсер ету үшін. Барлық басқа кейіпкерлер негізінен басып шығару, басып шығаруға болады, немесе графикалық таңбалар, мүмкін «қоспағандағарыш «таңбасы (қараңыз ASCII басып шығарылатын таңбалар ).

Барлық жазбалар ASCII 32 кодының астындағы кесте (техникалық C0 басқару кодының жиынтығы) осы түрге жатады, соның ішінде CR және LF мәтін жолдарын бөлу үшін қолданылады. Код 127 (DEL ) сонымен қатар басқару сипаты болып табылады[дәйексөз қажет ]. Кеңейтілген ASCII жиынтықтары ISO 8859 128-ден 159-ға дейінгі кодтарды басқару таңбалары ретінде қосты, бұл бірінші кезекте жоғары бит алынып тасталса, баспа таңбасын C0 басқару кодына өзгертпеуі үшін жасалды, бірақ бұл жерде кейбір тапсырмалар болды, атап айтқанда NEL. Бұл екінші жиын деп аталады C1 орнатылды.

Осы 65 бақылау коды өткізілді Юникод. Юникод басқару элементтері деп санауға болатын көп таңбалар қосты, бірақ бұл «таңбаларды форматтау» (мысалы, ені нөлге тең емес ) және 65 басқару таңбасы.

The Кеңейтілген екілік кодталған ондықты ауыстыру коды (EBCDIC) символдар жиынтығында 65 басқару кодтары, соның ішінде барлық ASCII басқару кодтары және қосымша кодтар бар, олар көбінесе IBM перифериялық құрылғыларын басқару үшін қолданылады.

[1]0x000x10
0x00ЖОҚDLE
0x01SOHDC1
0x02STXDC2
0x03ETXDC3
0x04EOTDC4
0x05ENQНАК
0x06ACKSYN
0x07БЕЛETB
0x08BSБОЛАДЫ
0x09TABEM
0x0ALFSUB
0x0BVTШЫҒУ
0x0CФФFS
0x0DCRGS
0x0EСОRS
0x0FSIАҚШ
0x7FDEL

Тарих

Процедуралық белгілер жылы Морзе коды басқару сипатының нысаны болып табылады.

Басқару таңбаларының формасы 1870 жылы енгізілген Бодот коды: NUL және DEL.1901 ж Мюррей коды деп қосты арбаны қайтару (CR) және желілік берілім (LF) және Baudot кодының басқа нұсқаларында басқа басқару таңбалары бар.

The қоңырау сипаты Операторларды ескерту үшін қоңырау соққан (BEL) да ерте болды телетайп басқару сипаты.

Басқару таңбалары «форматтық эффекторлар» деп те аталады.

ASCII-де

Жалпы қолданыстағы ASCII-дің басқару таңбаларына мыналар жатады:

Басқару таңбаларын пайдаланушы енгізген кезде бірдеңе жасау деп сипаттауға болады, мысалы, код 3 (Мәтін соңы таңбасы, ETX, ^ C) жұмыс істеп тұрған процесті тоқтату үшін немесе 4 кодын (Таратудың аяқталуы, EOT, ^ Д.), мәтінді енгізуді аяқтау немесе а шығу үшін қолданылады Unix қабығы. Бұл қолданыстар мәтін шығарылған кезде олардың қолданылуымен аз байланыста болады, ал қазіргі жүйелерде әдетте код нөмірі берілмейді (оның орнына бағдарлама пайдаланушының Ctrl пернесін басып тұрғанын алады) және «С» белгісімен белгіленген пернені басу).

Басқару таңбалары өте аз болды (ASCII-де 33, ал ECMA-48 стандарты 32-ге қосылады). Себебі ерте терминалдарда кез-келген күйді еске түсіретін өте қарапайым механикалық немесе электрлік басқару элементтері болған API іске асыру өте қымбат, сондықтан әр функция үшін әр түрлі код талап етілді. Функцияны орындау үшін кодтар тізбегін түсіндіру тез және арзан болды, ал құрылғы жасаушылар құрылғыға жүздеген нұсқаулық жіберудің жолын тапты. Нақтырақ айтқанда, олар ASCII кодын 27 қолданды (қашу), содан кейін «басқару тізбегі» немесе «қашу кезегі» деп аталатын символдар қатары қолданылды. Механизм ойлап тапты Боб Бемер, ASCII әкесі. Мысалы, 27 кодының реттілігі, содан кейін «[2; 10H» баспаға шығарылатын таңбалары а-ны тудырады DEC VT-102 оны жылжыту үшін терминал меңзер экранның 2-жолының 10-ұяшығына дейін. Бұл реттілік үшін бірнеше стандарттар бар, атап айтқанда ANSI X3.64. Бірақ қолданыстағы стандартты емес вариациялардың саны өте көп, әсіресе принтерлер арасында технология кез-келген стандарттарға сәйкес келмейтін жылдамдықпен дамыған.

Юникодта

Юникодта «басқару символдары» U + 0000 — U + 001F (C0 басқару элементтері), U + 007F (жою) және U + 0080 — U + 009F (C1 басқару элементтері) болып табылады. Олардың Жалпы санат «Cc» болып табылады. Пішімдеу кодтары ерекше, «Cf» жалпы санатында. Cc басқару таңбаларының Unicode-де аты жоқ, бірақ оның орнына «» сияқты белгілер беріледі.[2]

Дисплей

-Мен бейнеленетін баспа емес таңбаларды бейнелеудің бірқатар әдістері бар қоңырау сипаты жылы ASCII кодтау:

  • Код нүктесі: ондық 7, он алтылық ондық 0x07
  • Аббревиатура, көбінесе үш бас әріп: BEL
  • Аббревиатураны ықшамдайтын ерекше таңба: Unicode U + 2407 (␇), «қоңырау белгісі»
  • Ан ISO 2047 графикалық көрінісі: Unicode U + 237E (⍾), «қоңырауға арналған графика»
  • Карет белгісі ASCII-де, мұнда кодтық нүкте 00xxxxx каретка түрінде ұсынылады, содан кейін 10xxxxx кодтық нүктесінде бас әріппен жазылады: ^ G
  • Ан қашу дәйектілігі, сияқты C /C ++ символдық жол кодтары: а, 07, x07және т.б.

Басқару таңбалары пернетақтаға қалай сәйкес келеді

ASCII негізіндегі пернетақталар «деген кілт барБақылау «,» Ctrl «немесе (сирек)» Cntl «, ол ауысу пернесі сияқты қолданылады, басқа әріппен немесе символдық пернемен бірге басылады. Бір іске асыруда басқару пернесі кодтың кодының астында 64 орын жасайды. (әдетте) бас әріппен бірге басылады (яғни, ASCII кодының мәнінен ондыққа 64-ті алып тастаңыз (жалпы) үлкен әріптің ондық белгісімен). Басқа іске қосу - бұл кілт шығарған ASCII кодын алу және биттік ЖӘНЕ ол 6-дан және 7-ге дейінгі биттерді нөлге мәжбүрлейтін 31-ден. Мысалы, «басқару» және «g» немесе «G» әрпін басу (код 107 дюйм) сегіздік немесе 71 дюйм 10-негіз, бұл 01000111 дюйм екілік, 7 кодын шығарады (Bell, 7 базасында 10, ал 00000111 екілік түрінде). NULL таңбасы (0 коды) Ctrl- @ түрінде ұсынылады, «@» ASCII символдар жиынтығында «А» -ның алдында код болып табылады. Ыңғайлы болу үшін көптеген терминалдар Ctrl-Space-ті Ctrl- @ үшін бүркеншік ат ретінде қабылдайды. Кез-келген жағдайда, бұл 0-ден 31-ге дейінгі 32 ASCII басқару кодының бірін шығарады. Бұл тәсіл DEL символын көрсете алмайды, өйткені оның мәні (коды 127), бірақ Ctrl-? бұл таңба үшін көбінесе '?' дан 64-ті алып тастағанда қолданылады. −1 береді, егер ол 7 битке маскаланса 127 болады.[3]

Басқару пернесі басылған кезде, әріптік пернелер күйіне қарамастан бірдей басқару символдарын шығарады ауысым немесе жоғарғы Бас әріп регистрі кілттер. Басқаша айтқанда, кілт бас әріппен немесе кіші әріппен жазылғаны маңызды емес. Басқару пернесін бос орынмен, графикалық таңбамен және цифрлық пернелермен (ASCII кодтары 32-ден 63-ке дейін) интерпретациялау жүйелерде әр түрлі болады. Кейбіреулер басқару батырмасы ұсталмаған сияқты бірдей таңба кодын шығарады. Басқа жүйелер бұл пернелерді басқару пернесі басылған кезде басқару символына айналдырады. Басқару кілтін ASCII емес («шетелдік») кілттермен интерпретациялау жүйелер арасында да әр түрлі болады.

Басқару таңбалары көбінесе баспа түрінде белгілі болып шығарылады каретка белгісі каретканы (^) басып шығару керек, содан кейін басқару символының плюс 64 мәніне ие болатын ASCII таңбасын басу арқылы. Әріпті пернелер көмегімен жасалған басқару таңбалары әріптің бас әріптерімен бірге көрсетіледі. Мысалы, ^ G басқару батырмасы басылған кезде G пернесін басу арқылы жасалынатын 7 кодын білдіреді.

Сондай-ақ, пернетақтада басқару таңбаларының кодтарын шығаратын бірнеше жеке пернелер болады. Мысалы, «Backspace» деп белгіленген кілт әдетте 8, «Tab», 9, «Enter» немесе «Return» кодтарын шығарады 13 (бірақ кейбір пернетақталарда «Enter» үшін 10 коды болуы мүмкін).

Көптеген пернетақталарға кез-келген ASCII басып шығарылатын немесе басқарылатын таңбаларға сәйкес келмейтін пернелер кіреді, мысалы, меңзерді басқару көрсеткілері және мәтінді өңдеу функциялары. Байланыстырылған пернелерді басу төрт әдістің бірімен компьютерлік бағдарламаларға жіберіледі: басқаша пайдаланылмаған басқару таңбаларын иемдену; ASCII-ден басқа кейбір кодтауды қолдану; көп таңбалы басқару тізбектерін қолдану; немесе генераторлық символдардан тыс қосымша механизмді қолдану. «Мылқау» компьютерлік терминалдар әдетте басқару тізбектерін қолданады. Оқшау орнатылған пернетақта дербес компьютерлер 1980 жылдары жасалған, әдетте алғашқы екі әдістің біреуін (немесе екеуін де) қолданады. Қазіргі заманғы компьютерлік пернетақталар генерациялайды сканкодтар басылған нақты физикалық кілттерді анықтайтын; компьютерлік бағдарламалық жасақтама содан кейін басылған пернелерді, оның ішінде жоғарыда сипатталған төрт әдістің кез келгенін қалай өңдеу керектігін анықтайды.

Дизайн мақсаты

Басқару таңбалары бірнеше топқа бөлінуге арналған: баспа және дисплей басқару, мәліметтерді құрылымдау, жіберуді басқару және басқалары.

Басып шығаруды және дисплейді басқару

Басып шығаруды басқаратын таңбалар ең алғашқы шығу құрылғысы болып табылатын принтердің физикалық механизмін басқару үшін қолданылды. Бұл идеяның ерте іске асырылуы болды жолақтан тыс ASA кареткасының басқару символдары. Кейінірек басқару таңбалары басып шығарылатын мәліметтер ағынына біріктірілді.Каретканы қайтару таңбасы (CR) осындай құрылғыға жіберілгенде, оны таңбаны жазу басталатын қағаздың шетіне қоюға мәжбүр етеді (ол баспа күйін келесі жолға ауыстыруы да мүмкін, болмауы да мүмкін).Жолды беру таңбасы (LF / NL) құрылғыны келесі жолға басып шығару позициясын қоюға мәжбүр етеді. Ол құрылғыға және оның конфигурациясына байланысты басып шығаруды келесі жолдың басына жылжытуы мүмкін (немесе болмауы мүмкін) (бұл сол жақтағы позиция болады) солдан оңға сценарийлер, мысалы, батыс тілдері үшін қолданылатын алфавиттер және ең оң жақ позиция оңнан солға еврей және араб алфавиті сияқты сценарийлер).Тік және көлденең қойынды таңбалары (VT және HT / TAB) шығару құрылғысын басып шығару позициясын оқу бағытында келесі қойынды аялдамасына ауыстыруға мәжбүр етеді.Форманың берілу таңбасы (FF / NP) жаңа парақты бастайды және бірінші жолдың басына жылжуы немесе қозғалмауы мүмкін.Backspace таңбасы (BS) басып шығару позициясын бір таңбалық кеңістікті артқа жылжытады. Принтерлерде бұл көбінесе таңбаларды басып шығарып, басқа, әдеттегідей емес таңбаларды жасай алады. Терминалдарда және басқа электронды шығыс құрылғыларында артқы кеңістікті жоюға мүмкіндік беретін бағдарламалық жасақтама (немесе аппараттық) конфигурациясы жиі кездеседі (яғни BS, SP, BS тізбегі) өшіріледі немесе жойылмайды.Таңбаларды ауыстыру және ауыстыру (SO және SI) баламалы таңбалар жиынтығын, қаріптерді, астын сызу немесе басқа баспа режимдерін таңдайды. Бір нәрсені жасау үшін жиі қашу дәйектілігі қолданылған.

Келуімен компьютерлік терминалдар Физикалық түрде қағазға басып шығармаған және экранды орналастыруға, өшіруге және басқаларға қатысты икемділікті ұсынған, басудың басқару кодтары бейімделді. Мысалы, форма берілімдері, әдетте, экранды тазартады, жаңа қағаз беті болмайды. Жаңа терминалдар мен шынымен де жаңа принтерлердің икемділіктерін пайдалану үшін күрделірек қашу тізбектері жасалды. Басқару таңбасының тұжырымдамасы әрдайым біршама шектеулі болды және жаңа, әлдеқайда икемді, аппараттық құралдармен қолданған кезде өте жоғары болды. Басқару тізбегі (кейде қашу реті ретінде жүзеге асырылады) жаңа икемділік пен қуатқа сәйкес келуі мүмкін және стандартты әдіске айналды. Дегенмен, таңдау үшін стандартты дәйектіліктің алуан түрлілігі болған және қалады.

Мәліметтерді құрылымдау

Бөлгіштер (File, Group, Record және Unit: FS, GS, RS және US) имитациялау үшін, әдетте таспаға мәліметтер құрылымын жасау үшін жасалған перфокарталар.Ортаның соңы (ЭМ) таспа (немесе басқа жазу ортасы) аяқталатынын ескертеді.Деректерді құрылымдау үшін көптеген жүйелер CR / LF және TAB қолданатын болса, құрылымдауы қажет мәліметтерде бөлгіштің басқару таңбаларын кездестіруге болады. Сепаратордың басқару таңбалары шамадан тыс жүктелмеген; оларды деректерді құрылымдық топтарға бөлуден басқа жалпы қолдану мүмкін емес. Олардың сандық мәндері сөз бөлгіш ретінде топ мүшесі деп санауға болатын кеңістік таңбасымен сабақтас.

Трансмиссияны басқару

Берілісті басқарудың таңбалары деректер ағынының құрылымын құруға және қайта жіберуді немесе талғампаз сәтсіздікті, қажет болған жағдайда, жіберу қателері кезінде басқаруға арналған.

Тақырыптың (SOH) таңбасының басталуы мәліметтер ағынының деректер емес бөлігін - мекен-жайлар мен басқа да үй жинау деректерін қамтитын ағынның бөлігін белгілеу болды. Мәтіндік таңбаның басы (STX) тақырыптың соңын, ал ағынның мәтіндік бөлігін бастайды. Мәтіндік таңбаның соңы (ETX) хабарлама мәліметтерінің соңын белгілеген. Кеңінен қолданылатын шарт - бұл ETX алдындағы екі таңбаны бақылау сомасына айналдыру CRC қателерді анықтау мақсатында. Беріліс блогының таңбасының соңы (ETB) мәліметтер блогының соңын көрсету үшін пайдаланылды, мұнда мәліметтер беру үшін осындай блоктарға бөлінген.

Қашу сипаты (ШЫҒУ ) келесі символға «дәйексөз» келтіруге арналған, егер ол басқа басқару символы болса, оны басқару функциясын орындаудың орнына басып шығарар еді. Ол бүгінде бұл мақсатта ешқашан қолданылмайды. Көрінетін ретінде әр түрлі баспа таңбалары қолданылады «қашу кейіпкерлері »контекстке байланысты.

Орынбасар таңба (SUB ) келесі таңбаның басып шығарылатын таңбадан басқа мәнге аудармасын сұрауға арналған, әдетте 5 битті нөлге қою арқылы. Бұл өте ыңғайлы, өйткені кейбір баспа құралдары (мысалы, жазу машинкалары шығаратын қағаз парақтары) тек баспаға шығатын таңбаларды жібере алады. Алайда мәтіндік режимде ашылған файлдары бар MS-DOS жүйелерінде «мәтіннің соңы» немесе «файлдың соңы» осымен белгіленеді Ctrl-Z таңбасының орнына Ctrl-C немесе Ctrl-D, басқа операциялық жүйелерде жиі кездеседі.

Бас тарту таңбасы (БОЛАДЫ ) алдыңғы элементті тастау керек деген белгі берді. Теріс тану сипаты (НАК ) - бұл белгілі бір жалауша, әдетте қабылдау қиындық тудырғанын және көбінесе ағымдағы элементті қайтадан жіберу керектігін ескертеді. Тану сипаты (ACK ) әдетте жалауша ретінде қолданыстағы элементте ешқандай проблема табылмағанын көрсетеді.

Тарату ортасы жартылай дуплексті болғанда (яғни, ол бір уақытта тек бір бағытта ғана тарай алады), әдетте кез-келген уақытта бере алатын шеберлік станциясы және рұқсаты болған кезде тарататын бір немесе бірнеше құл станциялары болады. Сұрау сипаты (ENQ ) әдетте негізгі станциядан құлдық станциядан келесі хабарламаны жіберуін сұрау үшін қолданылады. Құлдық станция оның берілуінің аяқталғанын көрсетеді, ол берілістің соңын жібереді (EOT ).

Құрылғыны басқару кодтары (DC1-ден DC4-ге дейін) жалпы болып табылады, әр құрылғы қажет болған кезде оны іске асыруы керек. Алайда, деректерді берудегі әмбебап қажеттілік - алушы уақытша басқа деректерді қабылдай алмаған кезде жіберушіден беруді тоқтатуын сұрау. Digital Equipment Corporation 19 қолданған конвенцияны ойлап тапты (құрылғыны басқару 3 таңбадан тұрады (DC3 ), сондай-ақ бақылау-S деп аталады немесе XOFF ) «S» беріліс қорабына дейін және 17 (құрылғы 1 таңбаны басқарады)DC1 ), бақылау-Q, немесе XON ) беруді бастау үшін. Оның кең қолданылғаны соншалық, көбісі бұл ресми ASCII-ге кірмейтінін түсінбейді. Бұл әдіс, бірақ енгізілген, деректер кабелінде тек өткізуді басқаруға арналған қосымша сымдардан аулақ болады, бұл ақшаны үнемдейді. Мұндай ықтимал тығырық жағдайларын болдырмас үшін, осындай беріліс ағындарын басқару сигналдарын пайдалануға арналған ақылға қонымды хаттама қолданылуы керек.

Деректер сілтемесінің қашу таңбасы (DLE ) келесі сілтеме STX немесе ETX сияқты басқару символы болатындығы туралы мәліметтер сілтемесінің екінші жағына сигнал болу үшін арналған. Мысалы, пакет келесі түрде құрылымдалуы мүмкін (DLE ) (DLE ) .

Әр түрлі кодтар

Код 7 (БЕЛ ) қабылдау терминалында дыбыстық сигнал тудыруға арналған.[4]

ASCII басқару таңбаларының көпшілігі қазіргі кезде жиі кездесе бермейтін уақыт құрылғыларына арналған. Мысалы, 22 код, «синхронды бос» (SYN ), бастапқыда синхронды модемдермен жіберілді (олар деректерді үнемі жіберіп отыруы керек), егер нақты деректер жіберілмеген болса. (Қазіргі заманғы жүйелер, әдетте, берілген сөздің басталуын хабарлау үшін старт битін пайдаланады - бұл ерекшелік асинхронды байланыс. Синхронды коммуникациялық байланыстар көбінесе мейнфреймдермен көрінетін, олар әдетте корпоративті жалға алынған желілер арқылы мейнфреймді басқа мейнфреймге немесе мүмкін шағын компьютерге қосу үшін жүретін).

Код 0 (ASCII код атауы ЖОҚ ) ерекше жағдай. Қағаз таспасында бұл тесік болмаған жағдайда болады. Мұны а ретінде қарастырған ыңғайлы толтыру басқаша мағынасы жоқ кейіпкер. NUL таңбасының позициясы тесілмегендіктен, оны кез келген басқа таңбамен ауыстыруға болады, сондықтан оны кеңістікті сақтау үшін, қателерді түзету үшін немесе кейінірек қол жетімді болатын ақпаратты енгізу үшін пайдаланды немесе басқа жерде. Есептеу кезінде ол көбінесе жолдың соңын белгілеу үшін белгіленген ұзындықтағы жазбаларға төсеу үшін қолданылады.

Код 127 (DEL, «рубута») - бұл да ерекше жағдай. Оның 7-биттік коды бәрі-бәрі а-дағы таңбалар ұяшығын жоятын екілік қағаз таспа артық соққы болған кезде. Қағаз таспасы ASCII дамыған кезде жалпы сақтау құралы болды, оның есептеу тарихы ҰОС II кодын бұзатын жабдықтардан басталды. Биуро Шифров. 1970 жылдары қағаз таспа ескірді, сондықтан ASCII-дің бұл ақылды аспектісі одан кейін өте сирек қолданылды. Кейбір жүйелер (мысалы, түпнұсқа алма) оны артқа айналдырды. Бірақ оның коды басқа басып шығарылатын символдар ауқымында болғандықтан және оған ресми тағайындалған глиф жоқ болғандықтан, көптеген компьютерлік жабдықты сатушылар оны қосымша басып шығарылатын таңба ретінде қолданды (көбіне қара басып шығарып, мәтінді өшіріп тастауға пайдалы «қорап» таңбасы) сиямен).

Өшірілмейді бағдарламаланатын ROM әдетте әрқайсысы а-ны білдіретін балқитын элементтер массиві ретінде жүзеге асырылады бит, оны тек бір жолға ауыстыруға болады, әдетте бірден нөлге дейін. Мұндай PROM-да DEL және NUL таңбаларын перфокаста қалай қолданылса, солай қолдануға болады: бірін кейінірек жазуға болатын мағынасыз толтыру байттарын сақтау үшін, ал екіншісі жазылған байттарды мағынасыз толтыру байттарына айналдыру үшін. Бірді нөлге ауыстыратын PROM үшін NUL және DEL рөлдері ауыстырылады; сонымен қатар, DEL тек 7-биттік таңбалармен жұмыс істейді, олар бүгінде сирек қолданылады; 8-биттік мазмұн үшін DEL-дің орнына 255 таңбалық код, әдетте кеңістік таңбасы ретінде анықталуы мүмкін.

Көптеген файлдық жүйелер басқару символдарының енуіне жол бермеңіз файл атаулары, өйткені оларда сақталған функциялар болуы мүмкін.

Сондай-ақ қараңыз

Ескертпелер мен сілтемелер

  1. ^ MS-DOS QBasic v1.1 құжаттамасы. Microsoft 1987-1991.
  2. ^ «4.8 атауы». Юникодтың стандартты нұсқасы 13.0 - негізгі сипаттама (PDF). Unicode, Inc.
  3. ^ «ASCII таңбалары». Архивтелген түпнұсқа 2009 жылғы 28 қазанда. Алынған 2010-10-08.
  4. ^ «RFC20». Алынған 2013-11-03.4.1 және 5.2 тараулардағы басқару таңбаларының құрылымы мен мағынасын түсіндіретін ескі АӨК

Сыртқы сілтемелер

  • ISO IR 1 C0 ISO 646 жиынтығы (PDF)