2013. 8. 27. 22:31

어셈블리어 - PUSH,POP 함수

PUSH POP

 

스택 : 스택이란 쌓아 올린 더미를 의미하는데 자료구조에서 기억 장치에 데이터를 일시적으로 겹쳐 쌓아 두었다가 필요할 때에 꺼내서 사용할 수 있게 주기억장치(main memory)나 레지스터(register)의 일부를 할당하여 사용하는 임시 기억장치를 말한다.

라고 네이버백과사전에 나와있었습니다. 스택을.. 어떻게 설명할까 고민중에 그냥 지식백과를 봤습니다.ㅋ

제가 좀 간추려보면 데이터를 임시적으로 저장했다가 필요할 때 꺼내쓰는 임시기억장치입니다.

알아야할점은 먼저 저장되는 데이터는 마지막에 나온다는 것입니다.

조잡하게 만들긴 했지만 ... 저런 구조를 띄고 있습니다.

 

무튼 PUSH POP은 스택에 관련된 명령어입니다.

 

PUSH

예제 : PUSH 인자1

스택에 인자1를 넣습니다(저장)

인자는 하나만 가지며 그자리에 레지스터,정수가 들어갈 수 있습니다 

 

POP

예제 : POP 인자1

스택에서 인자1을 빼냅니다.

스택에 인자1이 저장되 있어야 빼낼 수 있습니다.

 

'어셈블리어' 카테고리의 다른 글

어셈블리어 - CALL,CMP,JMP 함수  (1) 2013.08.27
어셈블리어 - INC,DEC,NOP  (3) 2013.08.27
어셈블리어 - ADD,SUB 함수  (1) 2013.08.27
어셈블리어 - MOV,LEA 명령어  (1) 2013.08.27
어셈블리어 - 레지스터*  (0) 2013.08.27
2013. 8. 25. 18:24

어셈블리어 - 어셈블리언어가 뭐죠?

어셈블리언어가 뭐죠?

 

셈블리언어는 C언어와 C++ 언어랑 같은 프로그래밍 언어 입니다.

하지만 특정 목적의 프로그램을 만들려고 소스를 적어넣을때엔 C/C++ 언어로 10줄의 소스만 적어넣으면 완성이

되는 프로그램이 어셈블리어에선 30줄 가까이 될 수 도 있기때문에 굉장히 복잡하고

 C/C++ 보단 조금 저급한 언어 여서 더 어려울 수 도 있습니다.

그래도 복잡하긴 하지만 기본적인 옵코드알고리즘 , 이동순서 등만 간단히 알면

"아아~ 이렇게 되는구나 *_*!!"

하고 눈이 번쩍 은근 재미를 느낄 수 있으니 포기하지말고 열심히 해봅시다..! ㅋㅋ

 

어셈블리어에선 제일 기초가 되는 옵코드부터 알아보도록 하겠습니다.