게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

while문의 경우에 말이죠...

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2006)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
김은상
손님





올리기올려짐: 2006년5월4일 18:44    주제: while문의 경우에 말이죠... 인용과 함께 답변

while exp do ----- (1)
cmd1 -----(2)
cmd2 -----(3)
cmd3 -----(4)

의 커맨드가 있을 경우, (1)~(4)까지 반복을 하고, 다시 (1)을 체크하면
table의 entry를 새로 만들어서 메모리 상태를 저장해야 할까요?
아니면, 바로 전에 (1)~(4)의 entry에 내용을 덮어쓰기해야 할까요?

즉, while문이 계속 반복될 때, 새로운 커맨드라고 생각하고 table entry를
추가해야 할지, 아니면 이전의 커맨드라고 생각하고 기존의 entry에 값을
덮어써야 할지 궁금하네요.
위로
정찬주



가입: 2006년 4월 30일
올린 글: 4

올리기올려짐: 2006년5월4일 19:37    주제: 둘 다 아닌 거 같은데요-.-; 인용과 함께 답변

각각의 커맨드가 시작하기 전의 위치에서
메모리가 가질 수 있는 모든 상태들의 집합...이니까.

완전히 새로운 테이블을 만들어야겠죠

example)
x := 0;
y := 1;
<< 요 위치를 묻는다면....
while x< 3 x := x + 1

처음 돌때는 x = 0 y = 1
다시 오면 x = 1 y =1
또 오니까 x =2 y =1

그러니까 저 위치에서 가질 수 있는 메모리의 셋은
{ x=0 y=1 , x=1 y=1 , x=2 y=1 }
이 리턴되겠지요.

x=3 y=1이 들어가는지가 갑자기 마구 헷갈리고 있습니다[...]
위로
사용자 정보 보기 비밀 메시지 보내기
진민식



가입: 2006년 3월 21일
올린 글: 67

올리기올려짐: 2006년5월4일 22:00    주제: 인용과 함께 답변

인용:
x=3 y=1이 들어가는지가 갑자기 마구 헷갈리고 있습니다[...]

위의 부분이 명확하게 알 수 없으시다면, C-- 의 semantics 정의를 다시보시면
될 것 같습니다.

while의 경우,

MㅏE => v(v =0) M ㅏ C => M' M'ㅏwhile E C => M''
-------------------------
Mㅏ while E C => M''

MㅏE => 0
-------------------------
Mㅏ while E C => M

입니다.
그리고 우리가 모으는 메모리는 while 을 수행하기 직전의 메모리를 모으는 것 입니다.
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4541.664A Program Analysis (Spring 2006) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay