전체 글
4byte float 저장방법(IEEE 실수저장방법)
○실수형 →실수는 소수점을 포함한 수 실수는 float형, double형 long double형이 있다. ※실수형의 단위 알아보기 ○float형의 저장방법 →float형은 IEEE754 저장방식을 이용한다. 여기서 IEEE는 ‘미국 전자전기 학회’를 뜻한다. 즉, IEEE에서 지정을 하면, 그것이 표준이 된다. →float 형은 4byte (32bit) 이다. 1비트의 부호비트(signed bit)와 8비트의 지수부(expotent part), 23비트의 소수부(mantissa part)로 구성. ※지수부(승수)를 계산 할 때는 승수+127(바이어스)를 해준다. 값을 8bit에 넣어준다. 범위는 -128~127까지이다. ※소수부는 1010 1111 1100 1000.1010 1011의 숫자에 정규화를 하..
CPU에 부호를 인식해서 저장/출력 하는 방식
1. 메모리에서 BB (-69) 를 CPU에다가 저장하여 출력을 할때, CPU에 BUS를 통해서 4byte 만큼의 칸을 받는데 [떙떙|떙떙|떙떙|BB] 를 받을 것이다. 그렇다면 앞에 떙떙은 어떤식으로 처리를 해야할까? ; 만약 int 형 자료면 떙떙|떙떙|떙떙|BB 일 것이고, short 형 자료면 떙떙|BB 로 처리될 것이다. 이때 부호를 인식해서 signed char 형태로 -69 를 출력하기 위해서라면 BB 를 FF|FF|FF|BB 로 출력하지 않고 그냥 BB 값을 가지면 양수 187의 값을 가진다. 그러므로 음수를 출력하려면 앞에 FF 가 채워져 있어야한다. 2. char형 앞에 unsigned 를 붙였더니 양수를 출력하여 앞에 FF 가 없다.
자료형byte만큼이동보기!
1. sp = sp + 1 을 실행한 후에 sp 의 주소값을 보면 short 형의 4byte 만큼만 이동한 것은 볼 수 있다.
Warning 띄우기말자!
1. 여기서 xp = 8 로 하여도 실행은 되지만 warning 이 뜸. 이유는 int*형 자료인 xp 에 8번지를 입력한 것 (윈도우 운영체제의 주소를 가지고있음, 포인터를 이용해 보려고하니깐 오류남, 자료형을 같게해줘야함)