장수의체계. 진수. 진수 3. 8진수와 6진수 4. 진법변환 5. 진정수연산과보수 6. 진부동소수점수의표현
진수 진수표현법 v 기수가 인수 v,,, 3, 4, 5, 6, 7, 8, 9 사용 9345.35 = 9 3 4 5 3. 5. = 9 3 3 4 5 3-5 - v 고대로마의기수법에는 5 진법을사용 v 진법의아라비아숫자는인도에서기원전 세기에발명 진법을나타내는기본수를기수 ( 基數, radix 혹은 base) 라한다. 이기수인수를 진법, 가기수인수를 진법, 가기수인수를 진법이라한다.
진수표현법 진수 (Binary number) v 기수가 인수 v, 사용. () =. = 3 () () (). () (). () - (). - () -3-4 v 컴퓨터에서사용, 큰수를표현하려면많은자리수가필요 모든디지털컴퓨터와시스템은 진동작에근거 TTL 논리의경우, 차단상태와포화상태의두가지중어느한쪽으로동작 3
8 진수와 6 진수 8진수표현법 (Octal) v 에서 7까지 8개의수로표현 v 진수를 3자리로끊으면 8진수로변환 67.36 (8) = 6 = 6 8 (8) 8 (8) 7 8 7 (8) 3 8 3. - 6 8 (8) - 6. (8) 6진수표현법 (Hexa-decimal) v 에서 9, A(a) 에서 F(f) 까지 6개의기호로표현 v 진수를 4자리로끊으면 6진수로변환 6C7.3A (6) = 6 = 6 6 (6) C C 6 (6) 7 6 7 (6) 3 6 3. - (6) A 6 A. - (6) 진수에해당하는 6 진기호 진수 3 4 5 6 7 8 9 3 4 5 6 진수 3 4 5 6 7 8 9 A B C D E F 4
진법변환. 진수 - 진수변환 v 정수부분과소수부분으로나누어변환 v 정수부분은 로나누고, 소수부분은 를곱한다. v 진수 69.6875를 진수로변환하는경우 69.6875 () =. () 5
진법변환 v 진수 69.6 을 진수로변환하는경우 v 진수소수부분은대부분의경우정확한 진수로변환이안된다. 69.6 () =.... () 6
진법변환 다른방법 : 양의 진수를단순하게 의급수로표현하고, 과 을각위치에기입한다. 예 ) 47 = 3 8 4 = 5 3 = 예 ) 75 = 48 5 8 3 4 = 9 7 5 = 7
진법변환. 진수 -8 진수변환 v 진수 69.6875 를 8 진수로변환하는경우 v 8 로나누고, 곱한다. 69.6875 () = 5.54 (8) v 진수 69.6 을 8 진수로변환한경우 69.6 = 5.463463¼ (8) 8
진법변환 3. 진수 -6 진수변환 v 진수 453.6875 를 6 진수로변환하는경우 453.6875 () = 5AD.B (6) v 진수 453.6 을 6 진수로변환하는경우 453.6() = 5AD.999¼ (6) 다른진법의경우도같은방법을이용하여변환할수있다 9
진법변환 4. 진수 - 진수 -8 진수 -6 진수상호변환 진수 진수 8진수 6진수 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 8 9 9 A 3 B 4 C 3 5 D 4 6 E 5 7 F
진법변환변환 q 상호변환예 69.6875 = 69.6 =.... () =. = 5. 5 =. = 5. 4 6 3 4 4 (8) () () 진 진 8 진 3 자리씩나눔 6... 3... (8) () 453.6875 =. = = 5 A D. B (). (6) () 진 진 6 진 4 자리씩나눔 69.6 =... =. = 4 5. 9 9 9 9 ()... 9... (6) ()
진법변환 q 상호변환예 (Cont d) 367.75 = ( 8). () 8 진수 자리 = 진수 3 자리 9 A3.5F3 = ( 6). () 6 진수 자리 = 진수 4 자리. 364.35 A3. D (8) (6) () = = 3 8 5 4 3 = 3 8 4.5.5 = 45.65 6 8 = 44.4535 4 8 () 3 8 - = 9 48 4.375.785 5 8 - = 3 64 6 8 4 3.5 5.535 = 6 3 6 = 63.835 () 3 6 - = 6 3.85.785 6 - = 6 3 3.85.785 () - - -3 각자릿수에각진법의누승을곱하여 진수로변환
3 q 상호변환예 (Cont d) () 6 5 4 3 3 4 5 6 7 8 () (8) 44.4535.565.65.5.5 4 6 3 64 8. 364.35 = = = = - - - - - () 8 7 6 5 4 3 3 4 5 6 7 () (6) 63.835.785.65.5.5 3 8. 3. = = = = - - - - - - - - D A 8 진 진 진 6 진 진 진진법변환
진수정수연산과보수. 진수양의정수덧셈 =, =, =, = ( 자리올림발생 ) Carry 진수 진수 Carry 8 진수 6 진수 6 7 53 Carry 3 3A 6B 4
진수정수연산과보수. 진음의정수표현과보수 (complement) v 최상위비트 (MSB) 를부호비트로사용양수 () : 음수 (-) : v 진음수를표시하는방법 부호와절대치 (sign- magnitude) 의보수 ('s complement) 의보수 ( s complement) v 의보수로변환하는방법, 으로변환 의보수 = v 의보수로변환하는방법 의보수 = 의보수 의보수 = 의보수 = = 의보수 = 의보수 = = 5
진수정수연산과보수 v r 진법 n 자리수 x 의 r 의보수 : v r 진법 n 자리수 x 의 r - 의보수 : Ø 567 의 9 의보수 : Ø 567 의 의보수 : Ø 의 의보수 : Ø 의 의보수 : r n - x r n -- x 3 -- 567 = 999-567 = 3-567 = - 567 = 43 433 8 -- = - = 8 - = - = v 양수를보수로바꾸면음수 v 음수를보수로바꾸면양수 6
진수정수연산과보수 진수의표현방법 3 가지 8bit 크기이며, MSB가부호비트임. b 7 b 6 b 5 b 4 b 3 b b b 부호와절대치 의보수 의보수 7 7 7 6 6 6 5 5 5 4 4 4 3 3 3 - -7-8 - -6-7 - -5-6 -3-4 -5-4 -3-4 -5 - -3-6 - - -7 - - 7
진수정수연산과보수 v 뺄셈 : 보수를취하여더하면뺄셈수행 (Carry 발생하면버림 ) 798-879 = 798 (-879) = 798 (-879) Þ 798 ( 4 = 798 9 =749 Þ 749-879) 자릿수맞춤 v 의보수를사용한 진정수의표현범위 bit 수 의보수를사용한 진정수의표현범위 n bit - n- ~ n- - 4 bit - 4- ~ 4- - (-8 ~ 7) 8 bit - 8- ~ 8- - (-8 ~ 7) 6 bit - 6- ~ 6- - (-3768 ~ 3767) 3 bit - 3- ~ 3- - (- 47483648 ~ 47483647) 8
진수정수연산과보수 3. 부호확장 (Sign Extension) v 부호확장은늘어난비트수만큼빈자리를채워준다. 진수 표현방법 부호확장방법 8bit 예 6bit 부호와크기 의보수 의보수 부호만 MSB 에복사하고, 나머지는 으로채움 늘어난길이만큼부호와같은값으로모두채움 늘어난길이만큼부호와같은값으로모두채움 양수 음수 양수 음수 양수 음수 9
4. 의보수로표현된음수를 진수로변환하기 ( 의보수 을 진수로변환하는경우 ) q 첫번째방법 진수정수연산과보수 MSB 가 이므로음수이다. 실제크기는 -8 이다. () = - 7 6 = -8 3 8 4 = -8 44 = -84 5 4 3 q 두번째방법 의보수로바꾸어 진수로바꾼다음 - 부호를붙인다. () Þ 의보수 = 7 6 = 64 6 4 = 84 Þ -부호를붙이면 = - 84 5 () 4 3
진수정수연산과보수 5. 의보수연산 (8bit) 양수 양수 = 양수 큰수-작은수 = 양수 작은수 - 큰수 = 음수 (4958=7) (58-49=9) (49-58=-9) 서로같음 음수 음수 = 음수 큰양수 큰양수 = 음수 큰음수 큰음수 = 양수 (-49-58=-7) (9874=-84) (-98-74=84) 서로다름 overflow
진수정수연산과보수 q Number Wheel 에의한 진정수의보수표현 Overflow 의발생원인 4 비트정수 6 개의서로다른수 8 비트정수 56 개의서로다른수 5 5 = -6 ( ) ß 5 에서 방향으로 5 칸이동하면 -6 9874 = -84 ( ) ß 98 에 방향으로 74 칸이동하면 -84
진부동소수점의표현 v 컴퓨터의부동소수점수는 IEEE 754 표준을따른다. v 부호 (sign), 지수 (exponent), 가수 (mantissa) 의세영역으로표시. v 단정도 (single precision) 부동소수점수와배정도 (double precision) 부동소수점수의두가지표현방법이있다. q 단정도및배정도부동소수점수의비트할당 구분 IEEE 754 표준부동소수점수의비트할당바이어스 단정도부동소수점수 3 bit 배정도부동소수점수 64 bit 7 3 3
진부동소수점의표현 q 정규화 (normalization) : 과학적표기방법 v 진수의정규화 69.6875 =. () =. =. 6 () v 바이어스 (bias) : 지수의음수부호제거 IEEE 754 표준에서는바이어스 7( 단정도 ) 또는 3( 배정도 ) 을사용 표현지수 = 바이어스 진지수값 부호 : 비트지수 ( 바이어스 7) : 8 비트가수 (.xxx ) : 3 비트 양수 ( ) 7 6 = 33 ( ) (). 을생략한가수 (.) 3 비트 6 진수로표기하면 48B6 여기에. 이생략되어있다. 4
진부동소수점의표현 - IEEE standard 배정확도부동소수점표현 s : 부호 비트 f : 가수 3 비트.f f f 3 형식실제 4 비트값 3 비트. ~. significand, 유효자리값, 항상정규화됨 e: 지수 8비트, 7 초과바이어스값유효지수범위 : -6 ~ 7 정규화된수표현 : (-) s e-7 등비수열합 x (.f) 최대수 à s=, e=54 f=... (- -3 ) 7 x (- -3 ) 최소양및음의수 à e= f=... = - -6 f field significand 십진수......5.5. 특수수표현 e=55, f= - infinity e=55, f= NaN (Not a Number), 유효하지않은연산 e=, f= - e=, f= denormalized, 정규화된수보다작은수 실제지수 E -6-6 7 biased 지수 e = E 7 십진수 이진수 -67 = -7 = 6 7 = 7 7 = 8 67 = 53 77 = 54 5
진부동소수점의표현 q 컴퓨터에서의부동소수점수의표현범위비교 단정도부동소수점수 배정도부동소수점수 비정규화된 진수 ~± -49 to ±(- -3 )ⅹ 6 ~± -74 to ±(- -5 )ⅹ 정규화된 진수 ~± -6 to ±(- -3 )ⅹ 7 ~± - to ±(- -5 )ⅹ 3 진수 ~±.4ⅹ -45 to ±3.4ⅹ 38 ~±4.94ⅹ -34 to ±.798ⅹ 38 단정도부동소수점수의표현범위 6