본문으로 이동

플래그 (프로그래밍)

위키백과, 우리 모두의 백과사전.
Khlee560 (토론 | 기여)님의 2024년 10월 9일 (수) 21:14 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

플래그(flag)는 컴퓨터 프로그래밍에서 '파일 비어 있음' 또는 '전체 대기열 상태'와 같은 특수 코드 조건을 신호하기 위해 이진 값 또는 불리언 변수를 저장하는 데 사용되는 하나 이상의 비트를 나타낼 수 있다.[1][2]

플래그는 데이터베이스 레코드와 같은 정의된 자료 구조의 개체로 발견될 수 있으며 플래그에 포함된 값의 의미는 일반적으로 해당 플래그가 속한 데이터 구조와 관련하여 정의된다. 많은 경우 플래그의 이진 값은 여러 가지 가능한 상태 중 하나를 나타내는 것으로 이해된다. 다른 경우, 이진 값은 비트 필드에서 "기록 가능" 또는 "삭제 가능"과 같은 능력이나 권한과 관련된 하나 이상의 속성을 나타낼 수 있다. 그러나 플래그 값에 할당할 수 있는 다른 의미도 많이 있다. 플래그의 일반적인 용도 중 하나는 향후 처리를 위해 데이터 구조를 표시하거나 지정하는 것이다.

마이크로프로세서 및 기타 논리 장치 내에서 플래그는 일반적으로 다양한 작업의 중간 또는 최종 상태나 결과를 제어하거나 나타내는 데 사용된다. 마이크로프로세서에는 일반적으로 이러한 플래그로 구성된 상태 레지스터가 있으며, 플래그는 산술 오버플로가 발생한 경우와 같은 다양한 사후 작업 조건을 나타내는 데 사용된다. 플래그는 조건부 점프 명령 처리와 같은 후속 작업에서 활용될 수 있다. 예를 들어 X86 어셈블리 언어의 je(같으면 점프) 명령어는 Z(제로) 플래그가 이전 작업에 의해 설정된 경우 점프를 초래한다.

명령줄 스위치를 플래그라고도 한다. 명령줄 프로그램은 이 기사의 의미에서 명령줄 스위치를 플래그로 변환하는 옵션 구문 분석기로 시작하는 경우가 많다.

같이 보기

[편집]

각주

[편집]
  1. Haigh, J. (1994). 《Designing Computer Programs》. Elsevier Science. 59쪽. ISBN 978-0-08-050403-2. 2023년 7월 31일에 확인함. 
  2. Fitzgerald, M. (2007). 《Learning Ruby: The Language that Powers Rails》. O'Reilly Media. 49쪽. ISBN 978-0-596-55532-0. 2023년 7월 31일에 확인함.