728x90
반응형
- Byte : CPU와 메모리 간 data를 읽고 쓸 때 를 최소 단위
- 2의 보수
- 11은 8bit 이진수로 00001011
- 이 때 not을 붙여 각 자리를 뒤집으면 11110100
- -11은 이진수로 11110100라고 표현
- formatting %08x
- x(hexa)로 8자리를 표현하는데 - 주소가 32bit라서 8자리를 많이 사용
- 빈 자리는 0을 채워넣어라
- a -> “%08x” -> 0000000a
- Shift 연산자는 0으로 빈 자리를 채움
- C언어에서 이진수의 맨 앞 자리가 1, 0에 따라 양수, 음수 판별
- 양수라면 맨 앞자리를 0으로, 음수라면 1로 채웜
- 원하는 자리만 1로 바꾸기
- ?? or(|) 1<<x
-
- #define BIT6 (unit16_t)(1<<6)
- #define BIT7 (1<<7)
- DATA |= BIT7;
- 원하는 자리만 0으로 나머지는 1로 바꾸기
- ?? and(&) ~(1<<x)
-
- DATA &= ~BIT6;
- 원하는 자리가 1인지 확인하기
- & AND
- if (DATA & BIT6)
- 해당 자리가 1이라면 1로, 아니면 0으로,
- 나머지는 무조건 0
- & AND
- 원하는 자리가 0인지 확인
- if ( ! (DATA & BIT6))
Bit Color Mixing
0000 0001 -> 빨강 (1<<0)
0000 0010 -> 초록 (1<<1)
0000 0100 -> 파랑 (1<<2)
0000 0111 -> 하얀색
0010 = 1<<1
0011 = 0010 | 1<<0
0001 = 0011 & ~(1<<1)
0101 = 0001 | 1<<2
728x90
반응형
'CS > Embedded System' 카테고리의 다른 글
Header file에 정의된 macro와 데이터형 이용하기 (0) | 2021.10.13 |
---|---|
[실습] Memory Map for P1.0 Red LED (0) | 2021.10.13 |
전자공학 기초 2 (0) | 2021.10.13 |
Microprocessor 기초 - MSP432P4111 (0) | 2021.10.13 |
전자공학 기초 1 (0) | 2021.10.13 |