이전 주제 보기 :: 다음 주제 보기 |
글쓴이 |
메시지 |
정찬주
가입: 2006년 4월 30일 올린 글: 4
|
올려짐: 2006년5월29일 21:35 주제: 숙제 질문입니다. |
|
|
숙제 스펙에는 프로그램의 변수가 가질 수 있는 integer value의 범위를 estimate한다고 되어 있는데 그럼 location은 어떻게 할까요?
..... |
|
위로 |
|
|
김은상 손님
|
올려짐: 2006년5월29일 22:08 주제: Re: 숙제 질문입니다. |
|
|
정찬주 씀: | 숙제 스펙에는 프로그램의 변수가 가질 수 있는 integer value의 범위를 estimate한다고 되어 있는데 그럼 location은 어떻게 할까요?
..... |
저는 로케이션도 그냥 value로 생각하고 동일하게 처리하고 있습니다.
로케이션은 항상 상수값만 assign한다고 가정하면 그 값은 항상 한개일테니까요. (조교님께서 로케이션값에 계산식을 넣으신다면... OTL) |
|
위로 |
|
|
진민식
가입: 2006년 3월 21일 올린 글: 67
|
올려짐: 2006년5월29일 22:27 주제: |
|
|
인용: | 숙제 스펙에는 프로그램의 변수가 가질 수 있는 integer value의 범위를 estimate한다고 되어 있는데 그럼 location은 어떻게 할까요?
..... |
수업에서 다루었던 언어의 semantics를 보면,
concrete(collecting) semantics 와 abstract semantics사이의
Galois 연결은
2^Val ->(alpha) hat_Val,
2^Val <-(gamma) hat_Val
을 이용하여서 정의 했습니다.
이는 하나의 변수가 여려 개의 location 값을 가질 수 도 있다는 말 입니다.
아래의 코드를 보고, 이를 안전하게 요약하는 방법으로 design하시면 될 것 같습니다.
코드: |
y := 1;
z := 2;
if readint < 10 then
x := &y
else
x := &z
end;
x := 3 |
|
|
위로 |
|
|
김용태 손님
|
올려짐: 2006년5월30일 5:55 주제: 너무 안전 조건이 많은 것 같습니다 |
|
|
인용: | 수업에서 다루었던 언어의 semantics를 보면,
concrete(collecting) semantics 와 abstract semantics사이의
Galois 연결은
2^Val ->(alpha) hat_Val,
2^Val <-(gamma) hat_Val
을 이용하여서 정의 했습니다.
이는 하나의 변수가 여려 개의 location 값을 가질 수 도 있다는 말 입니다.
아래의 코드를 보고, 이를 안전하게 요약하는 방법으로 design하시면 될 것 같습니다.
코드:
y := 1;
z := 2;
if readint < 10 then
x := &y
else
x := &z
end;
x := 3 |
말씀하신데로, 변수가 아주 넓은 대역의 메모리 주소 범위를 갖는 경우에 대해서도 안전하게 하기 위해서라면 너무 의미없는 결과가 나오는게 아닌가 싶습니다.(그래서 잘못하고 있다는 생각이 강하게 드는중...;; )
뭐가 들어가도 너무 top 으로 치우쳐 버릴 것 같은데... 저만 그런 생각인지 모르겠네요. 게다가 readint 같은 경우도 안전해질려면 역시 [-inf., +inf.] 로 포섭하는 것 이외에는 딱 떠오르는 방법도 없고 말이죠 ㅠㅠ |
|
위로 |
|
|
|