4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.

Slides:



Advertisements
Similar presentations
10-7 부동소수점 (Floating-Point) 계산  컴퓨터에서 숫자를 표기하는 방법  가수 (Fraction) : 부호화된 고정소수점 숫자 지수 (Exponent) : 소수점의 위치를 표시 ( 예 )10 진수 를 표기하면 Fraction Exponent.
Advertisements

Chapter 04 컴퓨터에서 데이터 표현. 04 컴퓨터에서 데이터 표현 2 인코딩 (encoding) – 현실세계의 정보를 컴퓨터 내부에서 처리할 수 있는 이진수로 변환하는 방법 1. 컴퓨터 속에서 데이터 표현 원리 0 - 아빠 1 - 엄마 00 - 아빠 01 - 엄마.
6 장. printf 와 scanf 함수에 대한 고찰 printf 함수 이야기 printf 는 문자열을 출력하는 함수이다. – 예제 printf1.c 참조 printf 는 특수 문자 출력이 가능하다. 특수 문자의 미 \a 경고음 소리 발생 \b 백스페이스 (backspace)
문자코드 1 박 2 일 (4 조 ) 이경도 이준집 이수연 엄태규. 문자코드란 ? 문자나 기호를 컴퓨터로 다루기 위하여, 문자나 기호 하나하나에 할당 시키는 고유의 숫자를 말하는 것이다.
재료수치해석 HW # 박재혁.
Part 03 상수, 변수, 자료형 ©우균, 창병모 © 우균, 창병모.
ㅎㅎ 구조체 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스 구조체 배열.
ㅎㅎ 구조체 C++ 프로그래밍 기초 : 객체지향의 시작 구조체 사용하기 함수 매개변수로서의 구조체 구조체 포인터와 레퍼런스
2장. 프로그램의 기본 구성. 2장. 프로그램의 기본 구성 2-1"Hello, World!" 들여다 보기 /* Hello.c */ #include int main(void) { printf("Hello, World! \n"); return 0;
Chapter 7. 조건문.
#include <stdio.h> int main(void) { float radius; // 원의 반지름
Report #2 - Solution 문제 #1: 다음과 같이 프로그램을 작성하라.
3장. 변수와 연산자. 3장. 변수와 연산자 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, / 3-1 연산자, 덧셈 연산자 연산자란 무엇인가? 연산을 요구할 때 사용되는 기호 ex : +, -, *, /
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 12. 포인터의 이해.
Chapter 04 C 연산자의 이해.
디지털영상처리 및 실습 대구보건대학 방사선과.
2장. 데이터의 표현 Lecture #2.
Heesang kim PL/SQL 3 Heesang kim.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
SqlParameter 클래스 선문 비트 18기 발표자 : 박성한.
컴퓨터 프로그래밍 기초 #02 : printf(), scanf()
Chapter 06. printf 함수와 scanf 함수 정리하기
임베디드 실습 # LED, 7’Segment 제어
6장. printf와 scanf 함수에 대한 고찰
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 03. 변수와 연산자.
14장. 포인터와 함수에 대한 이해.
공학컴퓨터프로그래밍 Python 염익준 교수.
11장. 1차원 배열.
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
3장. 데이터의 표현과 컴퓨터 연산 다루는 내용 진법과 진법 변환 연산과 보수 데이터의 표현 산술 연산 논리 연산.
C 프로그래밍 C언어 (CSE2035) (Chap11. Derived types-enumerated, structure, and union) (1-1) Sungwook Kim Sogang University Seoul, Korea Tel:
JA A V W. 03.
사용자 함수 사용하기 함수 함수 정의 프로그램에서 특정한 기능을 수행하도록 만든 하나의 단위 작업
어서와 C언어는 처음이지 제14장.
13. 포인터와 배열! 함께 이해하기 IT응용시스템공학과 김 형 진 교수.
Lesson 4. 수식과 연산자.
과학 탐구 토론 대회 1학년 2반 박승원 1학년 5반 권민성.
24장. 파일 입출력.
상수와 기본 자료형.
C 3장. 변수와 데이터형 #include <stdio.h> int main(void) { int num;
3장. 변수와 연산자 교안 : 전자정보통신 홈페이지 / 커뮤니티/ 학술세미나
Term Projects 다음에 주어진 2개중에서 한 개를 선택하여 문제를 해결하시오. 기한: 중간 보고서: 5/30 (5)
연산자 (Operator).
컴퓨터 프로그래밍 기초 - 10th : 포인터 및 구조체 -
2장. 변수와 타입.
제4강 처리장치 1.
컴퓨터 프로그래밍 기초 - 5th : 조건문(if, else if, else, switch-case) -
김선균 컴퓨터 프로그래밍 기초 - 7th : 함수 - 김선균
1. 2진 시스템.
2. Boole 대수와 논리 게이트.
Choi Seong Yun 컴퓨터 프로그래밍 기초 #03 : 변수와 자료형 Choi Seong Yun
정보의 표현 정보 체계_컴퓨터 내부의 정보 표현과 정보 처리
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
함수(Function) ◈ 함수의 개념 및 사용 이유 ◈ 함수 정의, 호출 및 선언 ◈ 지역변수와 전역변수 ◈ return 문
제5장 변수, 연산자, 수식.
에어 PHP 입문.
Homework #12 (1/2) 프로그램을 작성하고, 프로그램과 실행 결과를 프린트하여 제출한다.
Flow Diagram IV While.
Homework #8 (실습 #7) [1/2] 다음을 수행하는 PHP 프로그램을 작성하여 프로그램과 결과물을 프린트하여 제출한다. sin(45º), cos(45º), tan(45º)를 출력하는 프로그램을 작성하시오. 피보나치 수를 구하는 함수 fib($n)을 작성하고,
제10강 PC정비사 1급(필기) Lee Hoon Copyright(c) 2008 LeeHoon All rights reserved.
실습과제 (변수와 자료형, ) 1. 다음 작업 (가), (나), (다)를 수행하는 프로그램 작성
프로그래밍 개론 Ⅰ-실습 2장 데이터와 식①.
어서와 C언어는 처음이지 제21장.
컴퓨터는 어떻게 덧셈, 뺄셈을 할까? 2011년 10월 5일 정동욱.
13. 포인터와 배열! 함께 이해하기.
C로 만드는 자료구조.
6 객체.
5. 1 두 수를 입력받아 큰 수를 구하는 순서도를 작성하시오
2019 2학기 9장 배열과 포인터 1. 주소, 주소연산자(&) 2. 포인터, 역참조연산자(*) 3. 배열과 포인터.
3장. 데이터의 표현과 컴퓨터 연산 다루는 내용 진법과 진법 변환 연산과 보수 데이터의 표현 산술 연산 논리 연산.
Presentation transcript:

4장. 데이터 표현 방식의 이해

4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1

4-1 컴퓨터의 데이터 표현 2진수와 10진수 10진수 : 0~9를 이용한 데이터의 표현 2진수 : 0과 1을 이용한 데이터의 표현 컴퓨터는 내부적으로 모든 데이터 2진수로 처리 그림 4-2

4-1 컴퓨터의 데이터 표현 16진수와 10진수 16진수 : 0~9, a, b, c, d, e, f를 이용한 데이터의 표현 그림 4-3

데이터의 표현 단위인 비트(bit)와 바이트(byte) 4-1 컴퓨터의 데이터 표현 데이터의 표현 단위인 비트(bit)와 바이트(byte) 비트 : 데이터 표현의 최소 단위, 2진수 값 하나 (0 or 1)을 저장 바이트 : 8비트 == 1바이트 그림 4-4

4-1 컴퓨터의 데이터 표현 연습문제 4-2 1 2 4 8 16 32 64 128

4-1 컴퓨터의 데이터 표현 프로그램상에서의 8진수, 16진수 표현 8진수 : 0으로 시작 16진수 : 0x로 시작 8진수 : 0으로 시작 16진수 : 0x로 시작 예제 notation.c 참조 int a = 10; // 10진수. 아무런 표시도 없으므로… int b = 0xa; // 16진수. 0x로 시작하므로… int c = 012; // 8진수. 0으로 시작하므로…

4-2 정수와 실수의 표현 방식 정수의 표현 방식 MSB : 가장 왼쪽 비트, 부호를 표현 그림 4-7

4-2 정수와 실수의 표현 방식 잘못된 음의 정수 표현 방식 양의 정수 표현 방식을 적용한 경우 그림 4-8

4-2 정수와 실수의 표현 방식 정확한 음의 정수 표현 방식 2의 보수를 이용한 음의 정수 표현 방식 그림 4-9

4-2 정수와 실수의 표현 방식 음수 표현 방식의 증명 그림 4-10

4-2 정수와 실수의 표현 방식 연습문제 4-3 80 51 -87 -16 양의 정수 01001111 [ ] 01001111 [ ] 00110011 [ ] 음의 정수 10101001 [ ] 11110000 [ ] 80 51 -87 -16

4-2 정수와 실수의 표현 방식 잘못된 실수의 표현 방식 정수를 표현하는 방식을 실수 표현에 적용 작은 수를 표현하는데 있어서 한계를 지님 그림 4-11

4-2 정수와 실수의 표현 방식 정확한 실수 표현 방식 오차가 존재하는 단점을 지님, 그러나 효율적인 표현 방식 오차가 존재하는 단점을 지님, 그러나 효율적인 표현 방식 예제 float_error.c 참조 그림 4-12

4-3 비트 단위 연산 비트 단위 연산자의 종류 표 4-1 연산자 연산자의 의미 결합성 & | ^ ~ << 비트 단위 AND ex) a & b  | 비트 단위 OR ex) a | b ^ 비트 단위 XOR ex) a ^ b ~ 비트 단위 NOT ex) ~a << 왼쪽으로 이동 ex) a << 2 >> 오른쪽으로 이동 ex) a >> 2 표 4-1

4-3 비트 단위 연산 & 연산자 : 비트 단위 AND 0 & 0  0을 반환 0 & 1  0을 반환 0 & 0  0을 반환 0 & 1  0을 반환 1 & 0  0을 반환 1 & 1  1을 반환 int main(void) { int a=15; // 00000000 00000000 00000000 00001111 int b=20; // 00000000 00000000 00000000 00010100 int c = a&b; printf("AND 연산 결과 : %d", c); // 출력 결과 4

4-3 비트 단위 연산 & 연산자 : 비트 단위 AND 그림 4-13

4-3 비트 단위 연산 | 연산자 : 비트 단위 OR 0 | 0  0을 반환 0 | 1  1을 반환 0 | 0  0을 반환 0 | 1  1을 반환 1 | 0  1을 반환 1 | 1  1을 반환 int main(void) { int a=15; // 00000000 00000000 00000000 00001111 int b=20; // 00000000 00000000 00000000 00010100 int c = a|b; printf("OR 연산 결과 : %d", c); // 출력 결과 31

4-3 비트 단위 연산 | 연산자 : 비트 단위 OR 그림 4-14

4-3 비트 단위 연산 ^ 연산자 : 비트 단위 XOR 0 ^ 0  0을 반환 0 ^ 1  1을 반환 0 ^ 0  0을 반환 0 ^ 1  1을 반환 1 ^ 0  1을 반환 1 ^ 1  0을 반환 int main(void) { int a=15; // 00000000 00000000 00000000 00001111 int b=20; // 00000000 00000000 00000000 00010100 int c = a^b; printf("XOR 연산 결과 : %d", c); // 출력 결과 27

4-3 비트 단위 연산 ^ 연산자 : 비트 단위 XOR 그림 4-15

4-3 비트 단위 연산 ~ 연산자 : 비트 단위 NOT ~ 0  1을 반환 ~ 1  0을 반환 int main(void) ~ 0  1을 반환 ~ 1  0을 반환 int main(void) { int a=15; int b=~a; printf("NOT 연산 결과 : %d", b); // 출력 결과 -16

4-3 비트 단위 연산 ~ 연산자 : 비트 단위 NOT 그림 4-16

<< 연산자 : 왼쪽 쉬프트(shift) 연산 4-3 비트 단위 연산 << 연산자 : 왼쪽 쉬프트(shift) 연산 a<<b  a의 비트들을 b칸씩 왼쪽으로 이동한 값을 반환 8<<2  8의 비트들을 왼쪽으로 2칸씩 이동한 값을 반환 int main(void) { int a=15; // 00000000 00000000 00000000 00001111 int b= a<<2; // a의 비트들을 왼쪽으로 2칸씩 이동 printf("<<2 연산 결과 : %d", b); // 출력 결과 60

<< 연산자 : 왼쪽 쉬프트(shift) 연산 4-3 비트 단위 연산 << 연산자 : 왼쪽 쉬프트(shift) 연산 그림 4-17

>> 연산자 : 오른쪽 쉬프트(shift) 연산 4-3 비트 단위 연산 >> 연산자 : 오른쪽 쉬프트(shift) 연산 a>>b  a의 비트들을 b칸씩 오른쪽으로 이동한 값을 반환 8>>2  8의 비트를 왼쪽으로 2칸씩 이동한 값을 반환 a=-10; b=a>>2; // a의 비트들을 2칸씩 오른쪽으로 이동한 값을 b에 저장

>> 연산자 : 오른쪽 쉬프트(shift) 연산 4-3 비트 단위 연산 >> 연산자 : 오른쪽 쉬프트(shift) 연산 그림 4-18

레포트 삼각형의 넓이를 구하는 프로그램을 작성하시오. (이 프로그램은 사용자로부터 밑변과 높이를 입력받아 면적을 계산해야 한다.) 힌트) 삼각형의 넓이 = 밑변 * 높이/2