>  기사  >  컴퓨터의 스택이란 무엇입니까?

컴퓨터의 스택이란 무엇입니까?

藏色散人
藏色散人원래의
2020-09-28 13:10:2113810검색

컴퓨터에 있는 스택을 스택이라고도 합니다. 작업이 제한된 선형 테이블입니다. 테이블 끝에서 삽입 및 삭제 작업만 수행하는 선형 테이블입니다. 상대적으로 말하자면, 스택의 맨 아래를 스택의 맨 아래라고 합니다. 스택에 새 요소를 삽입하는 것을 푸시(Push), 밀기(Push) 또는 밀기(Push)라고 합니다. 스택의 최상위 요소를 스택의 새로운 최상위 요소로 만듭니다.

컴퓨터의 스택이란 무엇입니까?

추천: "프로그래밍 비디오"

스택이라고도 알려진 스택은 제한된 작업을 수행하는 선형 테이블입니다. 삽입 및 삭제 작업을 테이블 끝으로만 제한하는 선형 테이블입니다. 이 끝을 스택의 상단이라고 하고 다른 쪽 끝을 하단이라고 합니다. 스택에 새 요소를 삽입하는 것을 푸시(push), 푸시(push) 또는 푸시(push)라고도 합니다. 새 요소를 스택의 최상위 요소 위에 놓고 스택에서 새 요소를 삭제하는 것을 팝핑(popping)이라고도 합니다. 밀어내기(Push)는 스택의 최상위 요소를 삭제하고 인접한 요소를 스택의 새로운 최상위 요소로 만듭니다.

기본 개념

이 개념을 이해하려면 먼저 "스택"의 원래 의미를 이해해야 본질을 파악할 수 있습니다. "스택(Stack)"이란 승객이 물품이나 숙박시설을 보관하는 장소를 말하며 창고나 환승역까지 확장될 수 있다. 따라서 컴퓨터 분야에 도입하면 데이터를 임시로 보관하는 장소를 말하므로 '스택'이라는 용어가 있다. 스택에 들어가고 나가기.

우선, 시스템이나 데이터 구조 스택(푸시 및 팝)에서 데이터 콘텐츠를 읽는 것과 삽입하는 것은 서로 다른 두 가지입니다! 푸시는 데이터를 추가하는 것이고 팝핑은 데이터를 삭제하는 것입니다. 이러한 작업은 스택의 최상위, 즉 가장 낮은 주소를 제약 조건으로 하는 인터페이스 인터페이스에서만 수행할 수 있지만 스택의 데이터를 읽는 것은 캐주얼하고 인터페이스 제약이 없습니다. 많은 사람들이 이 개념을 오해하고 스택에 대해 혼란스러워합니다. 시스템 스택은 컴퓨터 아키텍처에서 구성 요소 간 상호 작용을 위한 미디어 영역, 즉 CPU와 메모리 간의 통신 채널 역할도 합니다. CPU는 시스템이 애플리케이션에 대해 지정한 스택 항목에서 실행 명령을 선형적으로만 읽습니다. 우리가 작성하는 프로그램은 이미지 단어를 사용하여 파이프라인(파이프라인, 조립 라인)입니다. CPU의 내부 상호 작용에 대한 자세한 내용은 EU 및 BIU 개념 소개를 참조하세요.

데이터 구조로서 스택은 한쪽 끝에서만 삽입 및 삭제 작업을 수행할 수 있는 특수 선형 목록입니다. 먼저 들어온 데이터가 스택의 맨 아래로 푸시되고, 마지막 데이터가 스택의 맨 위에 놓이게 되는 원리에 따라 데이터를 저장합니다. 스택의 맨 위에서부터(마지막 데이터가 먼저 읽혀짐) 스택에는 메모리 기능이 있습니다. 스택에 대한 삽입 및 삭제 작업 중에 스택의 아래쪽 포인터를 변경할 필요가 없습니다.

스택은 동일한 끝에서 삽입 및 삭제 작업을 허용하는 특수 선형 목록입니다. 삽입 및 삭제 작업이 가능한 쪽을 스택의 맨 위, 다른 쪽 끝을 맨 아래라고 합니다. 스택의 맨 아래는 고정되어 있으며 스택의 요소 수가 0일 때 스택의 맨 위는 부동합니다. , 이를 빈 스택이라고 합니다. 삽입을 일반적으로 PUSH, 삭제를 POP이라고 합니다. 스택은 First-In-Last-Out 목록이라고도 합니다.

스택은 함수 호출 시 중단점을 저장하는 데 사용될 수 있습니다. 스택은 재귀를 수행할 때 사용됩니다!

위 정의는 고전 컴퓨터 과학에서 설명됩니다.

컴퓨터 시스템에서 스택은 위의 속성을 지닌 동적 메모리 영역입니다. 프로그램은 데이터를 스택에 푸시하고 스택 상단에서 데이터를 팝할 수 있습니다. i386 시스템에서 스택의 맨 위는 esp라는 레지스터에 위치합니다. 푸시 작업을 수행하면 스택 상단의 주소가 감소하고, 팝 작업을 수행하면 스택 상단의 주소가 증가합니다.

스택은 프로그램 실행에 중요한 역할을 합니다. 가장 중요한 것은 스택 프레임이나 활동 기록이라고도 불리는 함수 호출 시 필요한 유지 관리 정보를 스택에 저장한다는 점이다. 스택 프레임에는 일반적으로 다음과 같은 정보 측면이 포함됩니다.

1. 함수의 반환 주소와 매개변수

2. 임시 변수: 함수의 비정적 지역 변수와 컴파일러에 의해 자동으로 생성된 기타 임시 변수를 포함합니다.

컴퓨터의 스택이란 무엇입니까?

위 내용은 컴퓨터의 스택이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.