10과 1.1111111111111111111111111111111111111111111111111111의 차이는 0.0000000000000000000000000000000000000000000000000001이니까 정확하게는 2^1024-2^971이겠지ㅁ나
치하야P(mingosudaisuki)2016-12-31 05:52
1.0x(2^1024) 아님?
란씨맨(116.33)2016-12-31 06:06
-1.0*(2^1024) ~ 1.0*(2^1024) 이거 같은데
란씨맨(116.33)2016-12-31 06:07
[-1 0] [ 0 1] 사이가 -1.0/(2^1024) ~ 1.0/(2^1024)
란씨맨(116.33)2016-12-31 06:12
부동소수점은 그안에 3가지 타입이 있음. 지수부가 전부 0은 subnormal number, 전부 1이면 special value 라 해서 가수부가 0이면 infinity 값, 가수부가 0이 아니면 NaN(not a number), 그리고 지수부가 전부1도 전부0도 아닐때만 일반적으로(normalized) 작동함.
fds(220.118)2016-12-31 06:32
비정규화된 애들은 어차피 MIN MAX 따질때는 상관없잖음
치하야P(mingosudaisuki)2016-12-31 06:40
지수부 전부 1111...11 하면 안된다는 얘기임. 111...110 해야지.
fds(220.118)2016-12-31 06:41
?
치하야P(mingosudaisuki)2016-12-31 06:46
그래서 2^1024-2^971 나오잖음 2046-1023=1023이니까
치하야P(mingosudaisuki)2016-12-31 06:47
아 이미 111..110 으로 한거임? 그냥 지수부 11 자리라는 소리밖에 없어서 그냥 11..11 로 한줄 알았는데
그러니까 10진수를 2진수로 변환했는데 52자리가 넘었다면 그 이후값이 짤려나가는 겁니다. 10진수 체계에서 루트2를 표현못하는 것과 같죠
ㅁ(122.25)2016-12-31 07:48
그냥 INFINITY다!!!
츄럴(59.22)2016-12-31 07:55
쉽게 정리해주께,.... 1을 기준으로 커지는거는 2^n 승 (n은 0,1,2,3,4......) 1을 기준으로 작아지는거는 2^-n( n은 0 1 2 3 4 ....) 이해됨?
란씨맨(116.33)2016-12-31 08:19
가장작은수는 2^-1024 가장큰수는 2^1023 이해됨?
란씨맨(116.33)2016-12-31 08:21
쉽게 정리해줌. 부동소수점은 지수부 자리가 전부 1이면 inf or NaN 임. 전부 0 이면 denormalized 로 계산됨. 즉, 저사이의 보통값중 최대값 할때는 double 지수부 11자리를 11...11 보다 1 작은 11...10 해야됨. 그러면 2046 임. 여기서 bias 값 (2^(11-1)-1)=1023 을 빼줘야함. 그럼 1023 임. 또, 가수부 계산은 denormalized 일 경우는 보통의 경우처럼 0.111..._2 로 하지만 normalized 는 저기다 1 을 더해서 1.111..._2 = (2-2^(-52)) 임. 즉, normalized 최대값은 (2-2^(-52))*2^(1023) = (1-2^(-53))*2^)^(1024), normalized 최소는 2^(-1022)
되서->돼서 (되어 = 돼임) [리듬 맞춤법 봇♬]
후훗.. Double의 max값은 infinity로 알고 있습니다만.. 랄까(...)
아니 씨발 그거 하나 못구하냐
지수부 11비트 가수부 52비트잖아 그러니까 1.1111111111111111111111111111111111111111111111111111(2)×2^1023까지지
대충 2^1024라고 생각해도 됨
10과 1.1111111111111111111111111111111111111111111111111111의 차이는 0.0000000000000000000000000000000000000000000000000001이니까 정확하게는 2^1024-2^971이겠지ㅁ나
1.0x(2^1024) 아님?
-1.0*(2^1024) ~ 1.0*(2^1024) 이거 같은데
[-1 0] [ 0 1] 사이가 -1.0/(2^1024) ~ 1.0/(2^1024)
부동소수점은 그안에 3가지 타입이 있음. 지수부가 전부 0은 subnormal number, 전부 1이면 special value 라 해서 가수부가 0이면 infinity 값, 가수부가 0이 아니면 NaN(not a number), 그리고 지수부가 전부1도 전부0도 아닐때만 일반적으로(normalized) 작동함.
비정규화된 애들은 어차피 MIN MAX 따질때는 상관없잖음
지수부 전부 1111...11 하면 안된다는 얘기임. 111...110 해야지.
?
그래서 2^1024-2^971 나오잖음 2046-1023=1023이니까
아 이미 111..110 으로 한거임? 그냥 지수부 11 자리라는 소리밖에 없어서 그냥 11..11 로 한줄 알았는데
2^(1023) 맞음 01111111111 이 1023 이니까,
결론은 비트단위로 사인비트0 지수부1...10 가수부1...1 그럼 이게 (1-2^(-53))*2^1024 인가 산수한지 오래되서 모르겠네.
fds//되서->돼서 (되어 = 돼임) [리듬 맞춤법 봇♬]
되서되서되서되서되서되서되서되서되서되서
2진수로 표현이 안되는 10진수는 짤려나갑니다(...)
그러니까 10진수를 2진수로 변환했는데 52자리가 넘었다면 그 이후값이 짤려나가는 겁니다. 10진수 체계에서 루트2를 표현못하는 것과 같죠
그냥 INFINITY다!!!
쉽게 정리해주께,.... 1을 기준으로 커지는거는 2^n 승 (n은 0,1,2,3,4......) 1을 기준으로 작아지는거는 2^-n( n은 0 1 2 3 4 ....) 이해됨?
가장작은수는 2^-1024 가장큰수는 2^1023 이해됨?
쉽게 정리해줌. 부동소수점은 지수부 자리가 전부 1이면 inf or NaN 임. 전부 0 이면 denormalized 로 계산됨. 즉, 저사이의 보통값중 최대값 할때는 double 지수부 11자리를 11...11 보다 1 작은 11...10 해야됨. 그러면 2046 임. 여기서 bias 값 (2^(11-1)-1)=1023 을 빼줘야함. 그럼 1023 임. 또, 가수부 계산은 denormalized 일 경우는 보통의 경우처럼 0.111..._2 로 하지만 normalized 는 저기다 1 을 더해서 1.111..._2 = (2-2^(-52)) 임. 즉, normalized 최대값은 (2-2^(-52))*2^(1023) = (1-2^(-53))*2^)^(1024), normalized 최소는 2^(-1022)
가장작은수는 음수임여... 가장작은실수면 몰라도. 실수하셧군여 ㅋ