Flag (számítástechnika)

A számítógépes programozásban a flag egy vagy több bitre utalhat, amelyek egy bináris érték vagy egy Boole-változó tárolására szolgálnak, és speciális kódfeltételeket jeleznek, például a fájl üres vagy teli várólista állapotát.[1][2]

A flagek egy meghatározott adatszerkezet, például egy adatbázisrekord (row(wd)) tagjaként találhatók meg, és a flagben szereplő érték jelentése általában a hozzá tartozó adatszerkezettel kapcsolatban kerül meghatározásra. Sok esetben a flag bináris értéke a lehetséges körülmények vagy állapotok egyikét jelenti. Más esetekben a bináris értékek egy vagy több attribútumot képviselhetnek egy bitmezőben, amelyek gyakran képességekhez vagy jogosultságokhoz kapcsolódnak, mint például „írható” vagy „törölhető”. A flag-értékekhez azonban sok más lehetséges jelentés is rendelhető. A flagek egyik gyakori felhasználása az adatszerkezetek jelölése vagy kijelölése a későbbi feldolgozáshoz.

A mikroprocesszorokban és más logikai eszközökben a flag-eket általában különböző műveletek közbenső vagy végső állapotának vagy eredményének ellenőrzésére vagy jelzésére használják. A mikroprocesszorok jellemzően rendelkeznek például egy állapotregiszterrel(wd), amely ilyen flag-ekből áll, és a flag-ek különböző művelet utáni állapotok jelzésére szolgálnak, például aritmetikai túlcsordulás(wd) esetén.[3] A flag-ek felhasználhatók a későbbi műveletekben, például a feltételes ugróutasítások(wd) feldolgozásában. Például egy JE (Jump if Equal) utasítás az x86 assembly nyelvben ugráshoz vezet, ha a Z (zéró) flag-et valamilyen korábbi művelet beállította.

A parancssori kapcsolót flagnek is nevezik. A parancssori programok gyakran egy opcióelemzővel indulnak, amely a parancssori kapcsolókat a cikk értelmében flagekre fordítja.

Jegyzetek

  1. Haigh, J.. Designing Computer Programs. Elsevier Science, 59. o. (1994). ISBN 978-0-08-050403-2 
  2. Fitzgerald, M.. Learning Ruby: The Language that Powers Rails. O'Reilly Media, 49. o. (2007). ISBN 978-0-596-55532-0 
  3. A leggyakoribb CPU állapotregiszter-jelzők, amelyeket szinte az összes modern processzor alkalmaz: a Zero: Azt jelzi, hogy egy aritmetikai vagy logikai művelet eredménye nulla volt.; Carry: Az átvitel-flag lehetővé teszi egy szónál nagyobb számok összeadását/kivonását úgy, hogy szükség szerint egy bináris számjegyet visz át egy kevésbé jelentős szóból egy jelentősebb szó legkevésbé jelentős bitjébe.; Sign vagy Negative: Azt jelzi, hogy egy matematikai művelet eredménye negatív.; Overflow: Azt jelzi, hogy egy művelet előjeles eredménye túl nagy ahhoz, hogy beleférjen a regiszter szélességébe a kettes komplemens reprezentációval.

Fordítás

  • Ez a szócikk részben vagy egészben a Flag (programming) című angol Wikipédia-szócikk fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.

Kapcsolódó szócikkek

 

Prefix: a b c d e f g h i j k l m n o p q r s t u v w x y z 0 1 2 3 4 5 6 7 8 9

Portal di Ensiklopedia Dunia