프로그래밍기능사 CBT
종목 메뉴

개념 한 쪽

프로그래밍기능사 순차구문 — 언어 번역기와 실행 순서

프로그램은 소스 코드를 기계가 알아듣는 형태로 바꾸는 과정을 거쳐 실행된다. 이 번역과 실행을 맡는 처리기가 무엇인지, 그리고 저장 위치를 무엇으로 지정하는지가 순차구문 단원의 기본 개념이 된다.

2026-10-22 기준 · 프로그래밍기능사 대시보드

이 개념을 문제로 확인하고 싶으면 이 개념 문제 10개 풀기 회원용

가입 없이 오늘의 10문제 바로 풀기 →

뜻

언어 번역 프로그램은 고수준 언어나 어셈블리 언어를 기계어로 변환하는 소프트웨어이다. 어셈블러는 어셈블리 언어를 기계어로 바꾸고, 컴파일러는 전체 소스 코드를 한 번에 기계어로 변환하여 목적 프로그램을 만든다. 인터프리터는 소스 코드를 한 줄씩 번역하면서 바로 실행하며 목적 프로그램을 생성하지 않는다.

로더는 이미 번역되어 완성된 실행 파일을 메모리에 올려 실행을 준비하는 프로그램이다. 번역이 아니라 적재를 담당하므로 언어 번역 프로그램에 포함되지 않는다. 컴파일러가 전체를 먼저 번역하는 방식과 인터프리터가 한 줄씩 즉시 실행하는 방식의 차이를 구분하는 것이 핵심이다.

주기억장치에서 데이터를 저장하거나 읽어올 위치를 지정하는 것은 어드레스를 따른다. 어드레스는 각 저장 위치마다 부여되는 고유한 번호이다. 레코드나 블록은 데이터의 논리적 단위이고, 필드는 데이터의 세부 항목이므로 위치 지정과는 역할이 다르다.

데이터베이스의 구조는 테이블, 레코드, 필드의 포함 관계로 이루어진다. 테이블은 레코드의 집합이고 레코드는 필드의 집합이므로 범위는 테이블이 가장 넓고 필드가 가장 좁다.

예제

번역 방식 문제는 인터프리터와 컴파일러의 특징을 뒤바꾸어 낸다. 목적 프로그램을 만들지 않고 한 줄씩 번역하여 실행한다는 설명이 나오면 인터프리터이고, 전체 소스 코드를 한 번에 번역하여 목적 프로그램을 만든다는 설명이 나오면 컴파일러이다. 로더를 언어 번역 프로그램으로 넣는 선지도 함정이다. 로더는 번역된 결과를 메모리에 적재할 뿐 번역 기능이 없다.

데이터베이스 범위 문제는 포함 관계를 거꾸로 뒤집어 낸다. 필드가 레코드보다 넓다고 하거나 레코드가 테이블보다 넓다고 하면 틀리다. 테이블 안에 레코드가 있고 레코드 안에 필드가 있다는 집합과 원소의 관계를 떠올리면 순서가 명확해진다. 저장 위치를 묻는 문제에서는 논리적 데이터 단위인 레코드나 블록 대신 어드레스를 골라야 한다.

자주 묻는 물음

언어 번역 프로그램에는 무엇이 있나요?
어셈블러, 컴파일러, 인터프리터가 있다. 어셈블러는 어셈블리 언어를, 컴파일러는 고수준 언어 전체를, 인터프리터는 소스 코드를 한 줄씩 번역한다. 로더는 번역기가 아니라 실행 파일을 메모리에 적재하는 프로그램이다.
인터프리터와 컴파일러는 어떻게 다른가요?
인터프리터는 목적 프로그램을 만들지 않고 소스 코드를 한 줄씩 번역하여 즉시 실행한다. 컴파일러는 전체 소스 코드를 한 번에 기계어로 변환하여 목적 프로그램을 만든 뒤 실행한다.
데이터베이스에서 범위가 가장 넓은 것부터 차례대로 나열하면 어떻게 되나요?
테이블, 레코드, 필드 순서이다. 테이블은 레코드의 집합이고 레코드는 필드의 집합이므로 테이블이 가장 넓고 필드가 가장 좁다.
이 개념 문제 10개 풀기 회원용

프로그래밍기능사 풀이 세트에서 이 개념의 문제 10개를 바로 풀어 보세요.