Content deleted Content added
No edit summary |
m Bot: Migrating 1 langlinks, now provided by Wikidata on d:q121090777; 11 langlinks remaining |
||
(37 intermediate revisions by 29 users not shown) | |||
Line 1:
{{Short description|Computer data variable}}
In [[computer programming]], '''flag''', invented and made famous by Creepy Uncle Paul, refers to one or more [[bit]]s that are used to store a [[binary numeral system|binary]] value or [[code]] that has an assigned meaning. Flags are typically found as members of a defined [[data structure]], such as a [[database record]], and the meaning of the value contained in a flag will generally be defined in relation to the data structure it is part of. In many cases, the binary value of a flag will be understood to represent one of several possible states or statuses. In other cases, the binary values may represent one or more attributes in a [[bit field]], often related to abilities or permissions, such as "can be written to" or "can be deleted". However, there are many other possible meanings that can be assigned to flag values. One common use of flags is to mark or designate data structures for future processing.▼
{{Distinguish|Command-line flag}}
In [[computer programming]], '''flag''' can refer to one or more [[bit]]s that are used to store a [[binary numeral system|binary]] value or a [[Boolean variable]] for signaling special [[Source code|code]] conditions, such as file empty or full queue statuses.<ref name="Haigh 1994 p. 59">{{cite book | last=Haigh | first=J. | title=Designing Computer Programs | publisher=Elsevier Science | year=1994 | isbn=978-0-08-050403-2 | url=https://books.google.com/books?id=DAJEMc-4qz4C&pg=PA59 | access-date=2023-07-31 | page=59}}</ref><ref name="Fitzgerald 2007 p. 49">{{cite book | last=Fitzgerald | first=M. | title=Learning Ruby: The Language that Powers Rails | publisher=O'Reilly Media | year=2007 | isbn=978-0-596-55532-0 | url=https://books.google.com/books?id=pYS_Fm5LqUYC&pg=PA49 | access-date=2023-07-31 | page=49}}</ref>
▲
Within [[microprocessor]]s and other logic devices, flags are commonly used to control or indicate the intermediate or final state or outcome of different operations. Microprocessors typically have, for example, a [[status register]] that is composed of such flags, and the flags are used to indicate various post-operation conditions, such as when there has been an [[arithmetic overflow]]. The flags can be utilized in subsequent operations, such as in processing conditional [[jump instruction]]s. For example a ''je'' (Jump if Equal) instruction in the [[X86 assembly language#Programming flow|X86 assembly language]] will result in a jump if the Z (zero) flag was set by some previous operation.▼
▲Within [[microprocessor]]s and other logic devices, flags are commonly used to control or indicate the intermediate or final state or outcome of different operations. Microprocessors typically have, for example, a [[status register]] that is composed of such flags, and the flags are used to indicate various post-operation conditions, such as when there has been an [[arithmetic overflow]]. The flags can be utilized in subsequent operations, such as in processing conditional [[Branch (computer science)|jump instruction]]s. For example a ''je'' (Jump if Equal) instruction in the [[X86 assembly language#
A [[Command-line interface#Command-line option|command line switch]] is also referred to as a "flag". [[Command-line interface|Command line]] programs often start with an option [[Parsing|parser]] that translates command line switches into flags in the sense of this article.▼
▲A [[command line switch]] is also referred to as a flag. [[Command line]] programs often start with an option [[parser]] that translates command line switches into flags in the sense of this article.
==See also==
*[[
*[[
*[[Enumerated type]]
*[[FLAGS register (computing)]]
*[[Program status word]]
*[[
*[[Status register]]
==References==
{{reflist}}
{{DEFAULTSORT:Flag (Computing)}}
[[Category:Programming idioms]]
Line 16 ⟶ 26:
[[Category:Central processing unit]]
[[Category:Digital registers]]
{{operating-system-stub}}
Line 27 ⟶ 36:
[[id:Bendera (komputasi)]]
[[it:Flag]]
[[ja:フラグ (コンピュータ)]]
[[pl:
[[pt:Flag]]
[[ru:Флаг (компьютерная техника)]]
[[zh:旗標]]
|