Кіріспе

Компьютерлік бағдарламалауда флаг – екілік мәнді немесе логикалық айнымалыны сақтау үшін қолданылатын бір немесе бірнеше битті білдіреді, олар арнайы код жағдайларын, мысалы, бос файл немесе толық кезек статусын көрсету үшін пайдаланылады. Флагтар белгілі бір дерек құрылымының бөліктері ретінде, мысалы, деректер базасының жазбасы ретінде кездесуі мүмкін, ал флагтағы мәннің мағынасы әдетте ол кіретін дерек құрылымымен байланысты анықталады. Көп жағдайда флагтың екілік мәні бірнеше мүмкін күйдің немесе статустың біреуін көрсетеді. Басқа жағдайларда, екілік мәндер бит өрісіндегі бір немесе бірнеше атрибутты білдіруі мүмкін, көбінесе мүмкіндіктермен немесе рұқсаттармен байланысты, мысалы, "жазуға болады" немесе "жоюға болады". Дегенмен, флаг мәндеріне тағайындалатын көптеген басқа да мағыналар бар. Флагтарды қолданудың кең таралған жолы – болашақта өңдеу үшін дерек құрылымдарын белгілеу. Микропроцессорлар мен басқа логикалық құрылғыларда флагтар әртүрлі операциялардың аралық немесе соңғы күйін немесе нәтижесін басқару немесе көрсету үшін қолданылады. Микропроцессорлар әдетте, мысалы, осындай флагтардан тұратын статус регистріне ие болады, ал флагтар операциядан кейінгі әртүрлі жағдайларды көрсету үшін пайдаланылады, мысалы, арифметикалық ағып кету болған кезде. Флагтарды келесі операцияларда пайдалануға болады, мысалы, шартты секіру нұсқауларын өңдеуде. Мысалы, X86 ассемблер тіліндегі je (Jump if Equal) нұсқауы, егер Z (нөл) флагы алдыңғы операциямен белгіленген болса, секіруді тудырады. Командалық жолдың опциясы да флаг деп аталады. Командалық жол бағдарламалары көбінесе командалық жол опцияларын осы мақаладағы мағынадағы флагтарға аударатын опция талдаушысынан басталады.