8장. 프로그래밍 언어 처리 - 컴퓨터는 프로그램을 어떻게 해석하고 변환하는가
어셈블리 언어
어셈블리 언어 → 프로그래머가 모든 비트 조합을 외우지 않고, 이해하기 쉬운 니모닉을 통해 명령어 쓸 수 있음. 주소에 이름(레이블)을 붙일 수 있음, 코드에 주석을 달아 다른 사람들이 프로그램을 더 쉽게 읽고 이해하도록 도와줄 수 있음.
고수준 언어
어셈블리 언어보다 더 높은 추상화 단계에서 동작.
컴파일러를 통해 소스 코드가 기계어로 번역됨.
구조적 프로그래밍
잘못된 GOTO 사용으로 인해 발생할 수 있는 스파게트 코드 문제를 해결하기 위해 개발!
깔끔한 제어 흐름 - 프로그램을 더 쉽게 이해할 수 있음.
어휘 분석
어휘 분석 : 코드를 기호로부터 단어와 같은 성격의 토큰으로 변환하는 과정
상태 기계
상태로 이뤄진 집합과 한 상태에서 다른 상태로 전이되는 원인의 목록
→ 간단한 코드를 통해 입력 분류가 가능해짐!
정규식
언어를 지정하기 위한 언어 지정 - 패턴 매칭의 중추적 역할 수행
단어에서 문장으로
단어를 모아 문법에 맞는 문장으로 분석해야 함
파스 트리
컴파일 언어 : 소스 코드를 구체적인 기계에 맞는 기계어로 변환(같은 프로그램에 대해 다른 컴파일러 사용 시, 다른 대상 기계를 위한 프로그램을 만들어낼 수 있음)
인터프리터 언어 : 실제 기계(하드웨어로 된 실제 만져지는 기계)에 사용할 기계어를 만들어내는 건 X.
→ 가상 머신(소프트웨어로 작성된 기계)에서 실행됨!
둘 다 파스 트리 를 구성 - 언어 문법으로부터 만들어낸 DAG(유상 비순환 그래프) 데이터 구조
9장. 웹 브라우저 - 추상적인 컴퓨터를 이해하기 위한 가상 머신
마크업 언어
균일 자원 위치 지정자
브라우저는 URL을 사용, HTTP 프로토콜을 통해 서버에게 문서를 요청
URL = scheme/host/path로 구성됨
DOM : 문서 객체 모달
웹 브라우저 - 문서를 DOM에 따라 처리 → 깊이 우선 선회를 하면서 트리를 해석함
'source-code > software' 카테고리의 다른 글
| 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (0) | 2023.03.28 |
|---|---|
| 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (0) | 2023.03.27 |
| 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (0) | 2023.03.26 |
| 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (0) | 2023.03.23 |
| 한 권으로 읽는 컴퓨터 구조와 프로그래밍 (0) | 2023.03.23 |