3주차 강의 정리(한성태) - aksrud/3kingOfGod GitHub Wiki

컴퓨터의 기본구조

  1. CPU: 중앙처리 장치로 컴퓨터의 핵심 역량 장치 입니다. 컴퓨터가 처리하는데 필요한 모든 작업을 처리하는 장치 입니다.
  2. ALU:CPU내에서 2진수를 처리하는 장치입니다.
  3. 레지스터:CPU에 있는 기억장치로 가장 빠른속도를 가지고 있습니다.
  4. 캐시:CPU가 램과 대이터를 주고 받을 때 상대적으로 램의 속도가 느리기 때문에 L1,L2,L3캐시를 만들어서 자주 사용하는 데이터를 예측해서 병목현상을 예방합니다.

데이터를 기억 할 수 있는 임시 기억 장치 입니다. 파일의 자료를 저장하고 읽을 때 자료가 있는 위치를 순차적으로 찾아 가지 않고 어느 특정한 위치에 직접 자료를 검색하고 저장 할 수 있습니다.

프로세스

프로그램을 램에 로딩하면 그 로딩하는 프로그램을 프로세스라고 말 하고 실행 하였다고 합니다.

저장장치

전원이 꺼져도 데이터가 계속해서 남아있습니다. 반면 램은 전원이 꺼지면 데이터가 날아갑니다.

메모리구조

메모리는 1바이트로 만들어져 있고 그 안에 값을 저장 할 수 있습니다. 만약 운영체제가 32비트라면 2^32만큼의 메모리 주소가 있고 64비트라면 2^64만큼의 메모리 주소가 있습니다.

연산자

단항연산자

  1. 부호 (+,-)
  2. 증감(++,--) 뒤에 붙인다면 그 코드 줄이 끝난 뒤 연산 합니다.

이항 연산자

  1. 산술연산(+,-,/,*,%)
  2. 관계(대소)연산 (<,>,>=,,<=)
  3. 논리연산(!==,==,&,|,^,&&,||,<<,>>)

int main() {
	int a = 1;
	int b = 0;
	printf("%d\n", a&&b);
	printf("%d\n", a||b);
	printf("%d\n", !a);
	

	return 0;
}


#include <stdio.h>

int main() {
    int a = 10;
    int b = 3;
    b = a++;
    printf("%d %d\n", a, b);
    return 0;
}

#include <stdio.h>

int main() {
    int a = 10;
    int b = 3;
    ++a;
    printf("%d\n", a);
    a = a + 1;
    printf("%d\n", a);
    return 0;
}

#include <stdio.h>

int main() {
    int a = 10;
    int b = 3;

    printf("%d\n", a == b);
    printf("%d\n", a != b);
    printf("%d\n", a > b);
    printf("%d\n", a < b);
    printf("%d\n", a >= b);
    printf("%d\n", a <= b);
    return 0;
}

#include <stdio.h>

int main() {
    int n = 10;
    int a = 1 + 2;
    int b = 10 / 3;
    printf("%d %d\n", n, sizeof(n));
    printf("%p %d\n", &n, sizeof(&n));
    printf("%d\n", a);
    printf("%d\n", b);
    return 0;
  }```


⚠️ **GitHub.com Fallback** ⚠️