2014-11-24 2 views
0

"프로그래밍 언어 : 디자인 및 구현"과정을 수강하고 있으며 프로그래밍 언어에서 "런타임 표현"이 무엇을 의미하는지 알고 싶습니다"런타임 표현"은 프로그래밍 언어에서의 의미는 무엇입니까?

+0

더 구체적으로 말씀해 주시겠습니까? 무엇의 런타임 표현? 어떤 문구가 사용 된 구이며, 당신이 그것에 대해 이해하지 못하는 것은 정확히 무엇입니까? – svick

+0

@svick 구조체 또는 저장소 표현의 구현 또는 런타임 표현이라고도합니다. 확실하지 않습니다. 그 이유는 묻습니다. 이것은 프로그래밍 언어 연구에 사용됩니다 : 설계 및 구현. 나는 그것의 의미와 의미를 이해하지 못한다. – FortMax

답변

0

이것을 이해하려면 (현대) 컴퓨터는 정수 (다양한 길이 : 1, 2, 4 또는 8 바이트), IEEE 부동 소수점 수 (4 또는 8 바이트) 및 메모리 주소 (포인터, 4

예를 들어 목록을 갖고 싶을 때 (또는 사용하는 언어의 컴파일러 작성자가 적어도) 목록을 표시하는 방법을 생각해야합니다 (!). 런타임시 메모리.

0 단일 연결리스트 요소

한 가지 표현 :

|________|________| 
DataPtr NextPtr 

리스트 노드는 실제 데이터에 인접한 두 포인터 크기의 메모리 즉, 첫 번째 점을 얻어, 다음 목록의 노드에 대한 제 2 워드 포인트.

  1. 표현은 매우 임의 :

    여기에서 주목해야 할 두 가지가 있습니다. 예를 들어 데이터와 다음 포인터를 전환 할 수 있습니다. 이는 이전의 포인터와 다른 좋은 표현입니다.

  2. 튜플 또는 쌍의 런타임 표현을 고려하십시오. 다음과 같을 수 있습니다 :

    | ________ | ________ |

    PtrFirst PtrSecond 각각 제 1 및 제 2 구성 요소에 대한 포인터를 유지, 즉 두 개의 메모리이다

    . 친숙한가요?

    글쎄, 우리는 포인터를 가지고있는 두 개의 연속 된 단어가 쌍 또는 목록 요소를 나타내는 지 어떻게 알 수 있습니까? 우리는 할 수 없다! 많은 데이터 추상화는 동일한 런타임 표현을 사용하게됩니다.