본문 바로가기

CS2

[자료구조] 스택(Stack) 자동목차스택스택(stack)은 데이터를 일시적으로 쌓아 놓는 자료구조로, 데이터의 입력과 출력 순서는 후입선출(LIFO: Last In First Out)이다. 즉, 가장 나중에 넣은 데이터를 가장 먼저 꺼낸다.스택에 데이터를 넣는 작업을 푸시(push)라고 하고, 스택에서 데이터를 꺼내는 작업을 팝(pop)이라고 한다.스택에 데이터를 푸시하고 팝하는 과정이다.테이블 위에 접시를 겹겹이 쌓는 것처럼 데이터를 넣고 꺼내는 작업을 위쪽부터 수행한다.이렇게 푸시와 팝이 이루어지는 쪽을 꼭대기(top)라 하고, 그 반대쪽인 스택의 가장 아랫부분을 바닥(bottom)이라고 한다.void x() { /*...*/ }void y() { /*...*/ }void z() { x(); y();}void main.. 2023. 10. 4.
[컴퓨터구조] 소스코드와 명령어 소스코드와 명령어고급언어와 저급언어고급언어컴퓨터는 우리가 흔히 아는 C, C++, Java, Python과 같은 프로그래밍 언어를 이해할 수 없다. 프로그래밍 언어는 컴퓨터가 이해하는 언어가 아닌 사람이 이해하고 작성하기 쉽게 만들어진 언어이다. 이렇듯 사람을 위한 언어를 고급언어라고 한다.저급언어고급언어와 반대로 컴퓨터가 직접 이해하고 실행할 수 있는 언어를 저급 언어라고 한다. 저급 언어는 명령어로 이루어져 있고, 컴퓨터가 이해하고 실행할 수 있는 언어는 오직 저급 언어뿐이다. 고급 언어로 작성된 소스코드가 실행되려면 반드시 저급언어, 즉 명령어로 변환되어야 한다. 저급 언어에는 기계어와 어셈블리어 두 가지 종류가 있다. 우선 기계어란 0과 1의 명령어 비트로 이루어진 언어이다. 다시 말해.. 2023. 9. 28.