C프로그래밍
3. C함수의 구조
프로그램 설명
#include <stdio.h> // 표준입출력함수를 포함시킨다.
void main() // C프로그램의 실행은 항상 main() 함수로부터 시작된다.
main, winmain 등을 총칭해서 엔트리포인트(Entry Point) 라고부른다.
프로그램에서 반드시 있어야함, ()생략 불가능
main 이 없을경우 에러가 난다.
*라이브러리 = 함수모음
*표준라이브러리 = 기본제공함수모음
개행문자
\n - 백(역)슬래쉬n 은 한칸 내려와서(line feed) 앞으로 가는(carrage return) 기능이다
도스창 영문모드변경 - 명령 프롬프트상에서 chcp437 입력 영문에서는 \가 \표시된다.
변수의 선언과 사용
변수 : 메모리에 저장되는 위치
진법
2진법, 10진법, 8진법, 16진법
진법에서는 2의 제곱등 숫자들이 무게수(웨이트)를 가지고, 한자리 수로 표현된다.
16진법
0~F 까지 사용
2진법의 계산법
8진법 16진법도 같은 방식으로 하면된다.
윈도우계산기의 Hex(16진법), Dec(10진법), Oct(8진법), bin(2진법) 을 이용하면 편리하다.
4비트씩(단위:니블) 끊어서 계산하면 16진법 으로 빠르게 변환이 가능하다
ex)10001010(2)
1000 / (끊어서) 1010 = 8비트를 4비트식 2부분으로 나눈후 계산하면 앞에 비트는 10이 나오고 뒤에 비트는 9가 나오게 된다
10은 16진수에서 A이므로 [9A] 가 위의 2진수를 16진수로 표현한 것이다.
8진수는 앞에서 부터 3자리씩 끊어서 계산하면 빨리 구할수 있다.
1. 10진수-2진수 변환
v 정수부분과 소수부분으로 나누어 변환
v 정수부분은 2로 나누고, 소수부분은 2를 곱한다.
v 10진수 69.6875를 2진수로 변환하는 경우
v 10진수 69.6을 2진수로 변환하는 경우
v 10진수 소수부분은 대부분의 경우 정확한 2진수로 변환이 안 된다.
2. 2진 음의 정수 표현과 보수(complement)
v 최상위비트(MSB)를 부호비트로 사용
양수(+) : 0 음수(-) : 1
v 2진 음수를 표시하는 방법
• 부호와 절대치(sign- magnitude)
• 1의 보수(1's
complement)
• 2의 보수(2’s
complement)
v
1의 보수로 변환하는 방법
• 0 → 1, 1 → 0으로 변환
00000011 → 1의 보수 = 11111100
v
2의 보수로 변환하는 방법
• 1의 보수 + 1 = 2의 보수
00000011 → 2의 보수 = 1의 보수 + 1 = 11111100 + 1 = 11111101
01101100 → 2의 보수 = 1의 보수 + 1 = 10010011 + 1 = 10010100
최상위 비트(sign bit)를 부호비트로 사용하는 방식을 sign magnitude 방식 이라고 하면 이방식에서는 음수
덧셈이 문제가 된다.
그래서 다른방법이 나왔는데 보수(컴플리트)를 이용한 방식이 그것이다.
0-255 중 0-127까지 양수 128-255 까지를 음수로 정한다. 양수 1이 00000001 이고 음수 1이 255 이므로 11111111 이다. 더하면 00000000 이되므로 값이 0이되어서 계산이 맞게 된다.
빼기는 2의 보수로 바꿔서 더하는 방식이다.
이 방식도 사인드매그니튜드 방식처럼 최상위비트로 양,음수 구별이 가능하다.
메모리에 1바이트를 쓰겠다는 명령어 : char(캐릭터)
char A - 위치가 A
A = ex)403호
'보고서 > 9월 업무일지' 카테고리의 다른 글
9월 30일 업무일지 (0) | 2010.09.30 |
---|---|
9월 28일 업무일지 (0) | 2010.09.28 |
9월 27일 일일보고서 (0) | 2010.09.27 |
9월 24일 일일보고서 (0) | 2010.09.24 |
9월 20일 일일보고서 (0) | 2010.09.20 |