[JAVA] Shift 연산을 이용한 언더플로우의 발생 확인
페이지 정보
작성일 19-06-19 05:45
본문
Download : [JAVA] Shift 연산을 이용한 언더플로우의 발생 확인.hwp
b가 1씩 증가할수록 2로 나누어지는 연산이다. 하지만 직접 프로그램(program]) 을 실행시켜 본 결과는 예상과 달리 아무것도 나오지 않았고 프로그램(program]) 이 끝나지도 않았다.
설명
![[JAVA]%20Shift%20연산을%20이용한%20언더플로우의%20발생%20확인_hwp_01.gif](http://www.allreport.co.kr/View/%5BJAVA%5D%20Shift%20%EC%97%B0%EC%82%B0%EC%9D%84%20%EC%9D%B4%EC%9A%A9%ED%95%9C%20%EC%96%B8%EB%8D%94%ED%94%8C%EB%A1%9C%EC%9A%B0%EC%9D%98%20%EB%B0%9C%EC%83%9D%20%ED%99%95%EC%9D%B8_hwp_01.gif)
![[JAVA]%20Shift%20연산을%20이용한%20언더플로우의%20발생%20확인_hwp_02.gif](http://www.allreport.co.kr/View/%5BJAVA%5D%20Shift%20%EC%97%B0%EC%82%B0%EC%9D%84%20%EC%9D%B4%EC%9A%A9%ED%95%9C%20%EC%96%B8%EB%8D%94%ED%94%8C%EB%A1%9C%EC%9A%B0%EC%9D%98%20%EB%B0%9C%EC%83%9D%20%ED%99%95%EC%9D%B8_hwp_02.gif)
[JAVA] Shift 연산을 이용한 언더플로우의 발생 확인 , [JAVA] Shift 연산을 이용한 언더플로우의 발생 확인기타레포트 , JAVA Shift 연산 이용한 언더플로우 발생 확인
순서
JAVA,Shift,연산,이용한,언더플로우,발생,확인,기타,레포트
레포트/기타
Download : [JAVA] Shift 연산을 이용한 언더플로우의 발생 확인.hwp( 99 )
[JAVA] Shift 연산을 이용한 언더플로우의 발생 확인
REPORT
Shift연산을 통한 언더플로우의 발생 확인
과목명 :
교수명 :
학 번 :
이 름 :
-
int i = 1;
while (-1 `` i != 0)
{
i++;
}
System.out.println(i);
위에 소스 결과가 어떻게 나오는지 그 이유를 說明(설명) 하시오.
a``b는 비트로 표현된 a를 왼쪽으로 b비트만큼씩 옆으로 밀고 빈 자리를 0으로 채우며 밀려난 b비트는 삭제하는 시프트연산이다.
프로그램(program]) 을 수정하여 i값과 n의 값을 while문 안에서 출력하도록 만드니 일정 간격으로 n이 다시 1로 돌아가는 것을 발견할 수 있었다.
i와 1 `` i의 값은 다음과 같은 관계를 가지며 1 `` i는 다음과 같이 32비트로 표현할 수 있따
i
-1 `` i (편의상 n이라 하겠음)
비트
-1
11111111111111111111111111111111
1
-2
11111111111111111111111111111110
2
-4
...
REPORT
Shift연산을 통한 언더플로우의 발생 확인
과목명 :
교수명 :
학 번 :
이 름 :
-
int i = 1;
while (-1 `` i != 0)
{
i++;
}
System.out.println(i);
위에 소스 결과가 어떻게 나오는지 그 이유를 說明(설명) 하시오.
a``b는 비트로 표현된 a를 왼쪽으로 b비트만큼씩 옆으로 밀고 빈 자리를 0으로 채우며 밀려난 b비트는 삭제하는 시프트연산이다. b가 1씩 증가할수록 2로 나누어지는 연산이다.
i와 1 `` i의 값은 다음과 같은 관계를 가지며 1 `` i는 다음과 같이 32비트로 표현할 수 있따
i
-1 `` i (편의상 n이라 하겠음)
비트
-1
11111111111111111111111111111111
1
-2
11111111111111111111111111111110
2
-4
11111111111111111111111111111100
3
-8
11111111111111111111111111111000
31
-xxxxxxx648
10000000000000000000000000000000
32
-1
11111111111111111111111111111111
33
-2
11111111111111111111111111111110
처음 위와 같은 관계를 보았을 때 비트가 왼쪽으로 1씩 밀려나고 빈자리는 0으로 채워져 가므로 i가 32일 때 n의 값이 0이 될 것이라 예상했다. n의 값이 2xxxxxx648에서 1로 바뀌는 것을 보고 언더플로우가 발생하는 것을 발견하였고 다음과 같은 …(drop)
[JAVA] Shift 연산을 이용한 언더플로우의 발생 확인
다.