CPU(Central Processing Unit)중앙 처리 장치로 

ALU, CU, Register로 구성되어 있다.

1) ALU - 산술(Arithmetic) 논리(logic) 장치

   산술연산은 + - * / 등의 연산을 계산하며 논리연산은 AND OR 등의 연산을 계산한다.



2) CU - 제어(Control) 장치

   명령어를 해독(Decode)하여 명령어를 실행(Execute)하는 역할을 한다. 

   산술논리장치의 계산을 시작하고 끝내는 역할을 한다. 핵심 유닛이라고도 부른다.



3) Register

 a. 메모리 기능 

    - 기억한다. 즉 임시 저장 장소이다.

 b. 제어(Control) 장치 기능

     - 레지스터의 데이터가 cpu를 제어 하기도 한다.

 c. 외부 연결 기능


'C언어' 카테고리의 다른 글

201403112 도스에서 ftp사용하기  (0) 2014.03.12
20140310(2) 비교연산자  (0) 2014.03.11
20140310(2) C에서 소수점의 표현  (0) 2014.03.10
20140310 scanf  (0) 2014.03.10
20140307 변수와 연산자  (0) 2014.03.07
by 날라차숑 2014. 3. 11. 16:45


위 표는 메모리에 저장되는 값이다.

메모리 저장방법은 설명을 통해서 알아본다. 

6.25를 저장해 봅시다.

110.01 여기서 무조건 1.1001로 만들어버린다.

그렇다면 수식이 1.1001 x 2²이과 똑같다. 여기서 2승이 지수이고 +127이 해서 129가 지수부이다. 129를 이진수로 지수부에 들어가는거고 1.1001 이 빨간 부분이 이진수로 가수부에 들어가게 된다.

1110.01로 해보자.

1.11001 x 2³ 3+127이니까 130이 지수부 나머지 11001이 가수부가 된다.

'C언어' 카테고리의 다른 글

20140310(2) 비교연산자  (0) 2014.03.11
20140310 CPU 3대 구성요소  (0) 2014.03.11
20140310 scanf  (0) 2014.03.10
20140307 변수와 연산자  (0) 2014.03.07
20140306(2) C언어 변수의 이해  (0) 2014.03.06
by 날라차숑 2014. 3. 10. 17:37

예제1

#include <stdio.h>



int main()

{

  int iNum;

  scanf("%d"&iNum);//&주소 연산자 scanf에는 &을 붙인다. 이유는 다음에

  

  printf("입력한 값은?:%d입니다.\n", iNum);  



  return 0;

}




예제2

#include <stdio.h>



int main()

{

  int iNum1;

  int iNum2;

  int iNum3;

  int iResult;



  printf("세개의 정수를 입력하시오.\n");

  scanf("%d %d %d"&iNum1, &iNum2, &iNum3);

  iResult = (iNum1-iNum2)*(iNum2+iNum3)*(iNum3%iNum1);

  printf("(%d-%d)*(%d+%d)*(%d%%%d)의연산결과는 %d입니다.\n", iNum1, iNum2, 

  iNum2 ,iNum3 ,iNum3, iNum1 ,iResult);  // %표시는 %% 두개를 넣어야 %표시가 생긴다.



  return 0;

}





예제3

#include <stdio.h>



int main()

{

  int iNum1=0xa7//16진수를 쓸때 

  int iNum2=0x43//16진수

  int iNum3=032;  //8진수

  int iNum4=024;  //8진수



  printf("0xa7의 10진수 정수 값: %d \n", iNum1);

  printf("0x43의 10진수 정수 값: %d \n", iNum2);

  printf("0x0 의 10진수 정수 값: %d \n", iNum3);

  printf("024 의 10진수 정수 값: %d \n", iNum4);



  printf("%d-%d=%d \n", iNum1, iNum2, iNum1-iNum2);

  printf("%d-%d=%d \n", iNum3, iNum4, iNum1-iNum2);





  return 0;

}





예제4

#include <stdio.h>

int main()
{
  float fNum;
  fNum = 3.0/2//실수로 나눠야 실수로 나눠짐 둘다 정수로 만들면 정수나눗셈이 된다.
   //하나의 실수로 나누거나 두개의 실수로 나누면 된다.
  printf("%f\n", fNum);
  return 0;
}

'C언어' 카테고리의 다른 글

20140310 CPU 3대 구성요소  (0) 2014.03.11
20140310(2) C에서 소수점의 표현  (0) 2014.03.10
20140307 변수와 연산자  (0) 2014.03.07
20140306(2) C언어 변수의 이해  (0) 2014.03.06
20140306 C언어 함수의 기본적인 이해  (0) 2014.03.06
by 날라차숑 2014. 3. 10. 17:18