달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

0311
cpu에 더하는 회로를 alu 라 함.
cpu 3대 구성요소 : 사람이 직접 alu나 cu를 건들이기 힘들고..register를 건들여 register제어기능 사용하여 cpu 동작시킴.
 - alu (arithmatic and logic unit : 산술논리연산 회로. 사칙연산 등. alu 안에 덧셈기 있음)
 - cu (control unit : 외부장치제어 회로.)
 - register : 두가지 개념. 1기능만 있는 레지스터도 있고, 1과 2의 기능을 갖고 있는 레지스터도 있음.
   - 1. cpu 안에 있는 메모리 : cpu와 동급으로 동작하나 가격이 아주 비쌈. 플립플롭(1비트를 기억시키는 회로).
                               연산을 하기 위해 메모리에 있는 변수값을 cpu에 보관하는 장소.
                               레지스터와 메모리 사에에 캐시메모리가 있고 성능은 양자의 중간정도.
   - 2. cu의 성질. 제어.
   * 변수가 저장되는 공간은 레지스터가 아니라 메모리 영역.
&& : inum1전체를 통째로 보아 값을 참조.
&  : 위와 다른 회로 동작. 각 비트를 and 시킴. 비트연산자.
     and 게이트로 inum1와 inum2의 각 비트를 모두 검사, 자리수마다 and 게이트 동작.
inum3=inum1&&inum2; 에서.. 일의 순서는 프로그램 카운터에서 기억?? 메모리 주소 레지스터??
                    ..inum1거짓일 때 &&이후 생략되는 것은 어느 레지스터에서 판단??
틸드 : ~ 비트단위 not 연산자.

#include<stdio.h>
int main()

int inum1,inum2,inum3;
inum1=0xfffffff0;   // 11...0000 : 4바이트 다 쓰고 있음
//inum2=0x4;
inum3=~inum1;
printf("%x %x",inum1,inum3);

return 0;
}

단항연산자 네 가지. |(or) &(and) ~(not) ^(xor)
시프트연산자 >>   요즘은 *4로 해도 컴터가 쉬프트연산자 자동으로 해 줌.


#include<stdio.h>
int main()

int inum1,inum2,inum3;
inum1=0x18;      // 11...0000 : 4바이트 다 쓰고 있음
inum2=inum1>>2;  // 0011
inum3=inum2>>3;  // 0001  나머지 1은 짤려나감
printf("%x %x %x \n",inum1,inum2,inum3);
inum3=inum3<<3;  //1000
printf("%x\n",inum3);

return 0;
}

상수는 메모리에 저장된 값이 아니라..
CPU 연산조건 임??
L value : 변수. 메모리 공간. 변수명은 사실..숫자형 주소명을 문자로 표현해 놓은 것임.
R value : 변수나 상수. 상수가 저장된 공간은? 아님 cpu 연산상태?
변수, 키워드(변수명
으로 사용불가), 키워드처럼 쓰이는 main (엔트리포인트),
상수.

윈도우, 프로그램 설치. 컴터 환경셋팅은 본인이 할 줄 알아야.
vmi로 메모리 할당해서 xp 설치해보면 좋음.
아웃룩 pop3. ip 설정.

const : 변수용 문자를 상수용으로 씀.
sizeof 함수가 아닌 연산자!! sizeof num 가능하나 편의상 혹은 우선순위 때문에 sizeof(num).
sizeof(num1+num2)도..num1 자료형의 크기.

Posted by C언어 보이
|