컴퓨터 기본 원리 프로그래밍 언어 C 프로그래밍 환경 C 프로그래밍 작성, 컴파일, 링크 및 실행

Slides:



Advertisements
Similar presentations
ⓒ 2015 NHN Entertainment Corp. Django 로 만드는 초간단 블로그 시스템운영팀 김영태 개발환경 구축.
Advertisements

프로그램이란 프로그램 생성 과정 프로젝트 생성 프로그램 실행 컴퓨터를 사용하는 이유는 무엇인가 ? – 주어진 문제를 쉽고, 빠르게 해결하기 위해서 사용한다. 컴퓨터를 사용한다는 것은 ? – 컴퓨터에 설치 혹은 저장된 프로그램을 사용하는 것이다. 문제를 해결하기 위한.
프로그래밍언어론 TA 윤들녁. 소개 윤들녁 연락처 : 공대 7 호관 4 층 401 호 데이터베이스 연구실 실습 후 날짜 _ 학번.zip 으로.
을지대학교 무선 네트워크 사용 방법 2010 년 06 월 01 일. 을지대학교 무선 네트워크 사용 방법 1. PC 무선랜 카드 활성화 및 체크 1 단계 : 시작 -> 설정 -> 네트워크 설정 2 단계 : 무선 네트워크 설정 선택 -> 마우스 버튼 오른쪽 클릭 -> 사용.
천안천일고등학교 Copyright © by Ryu Bin All rights reserved 프로그래밍 실무.
.Net History. Visual Studio.Net 2002 /.Net Framework 1.0 제품의 버전 / 특징 2002 년 - Visual Studio.Net 2002 /.Net Framework 1.0 첫 통합 개발 환경 - C# 언어 등장 (C# 1.0)
엑셀리포트를 이용한 날짜별 리포트 자동 저장 방법
컴퓨터와 인터넷.
컴퓨터 운영체제의 역사 손용범.
목 차 C# 언어 특징 .NET 프레임워크 C# 콘솔 프로그램 C# 윈도우 프로그램 실습 프로그래밍세미나 2.
목차 Contents 무선인터넷용 비밀번호 설정방법 Windows 7 Windows 8 Windows XP MAC OS.
기초C언어 제1주 실습 강의 소개, C언어 개요, Cygwin/Eclipse 사용 컴퓨터시뮬레이션학과 2016년 봄학기
컴퓨터프로그래밍 1주차실습자료 Visual Studio 2005 사용법 익히기.
<<< 시스템등록정보 “하드웨어-장치관리자” 설정 >>>
Image & Video processing
1. 신뢰할 수 있는 싸이트 등록 인터넷 익스플로러 실행 후 실행
Power Java 제3장 이클립스 사용하기.
Power Java 제3장 이클립스 사용하기.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
1. Windows Server 2003의 역사 개인용 Windows의 발전 과정
Part 01 서론 안산1대학 디지털정보통신과 임 성 국.
Visual Basic 설치 컴퓨터응용 및 실습 I.
1장. 이것이 C 언어다.. 1장. 이것이 C 언어다. 프로그래밍 언어 1-1 C 언어의 개론적 이야기 한글, 엑셀, 게임 등의 프로그램을 만들 때 사용하는 언어 ‘컴퓨터 프로그래머’라는 사람들이 제작 C 언어(C++ 포함)를 가장 많이 사용함.
Power Java 제2장 자바 개발 도구.
Outlook Express 메일 백업 및 복원가이드
C 언어 1 1주차 C언어 시작하기 - 1차시 C 언어 특징 및 프로젝트 생성 Programming Language.
이것이 C 언어다. IT응용시스템공학과 김 형 진 교수.
윤성우의 열혈 C 프로그래밍 윤성우 저 열혈강의 C 프로그래밍 개정판 Chapter 01. 이것이 C언어다.
CHAPTER 02 OpenCV 개요 PART 01 영상 처리 개요 및 OpenCV 소개.
C / C++ Programming in multi platform
3.2 SQL Server 설치 및 수행(계속) 시스템 데이터베이스 master
1. C++ 시작하기.
컴퓨터정보공학부 서버 안내 [ IBM x3500 ] it.sangji.ac.kr ict.sangji.ac.kr 혹은
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
WinCE Device Driver 실습 #2
ARM Development Suite v1.2
학습목표 학습목차 다른 홈페이지의 HTML 파일 코드를 보는 방법에 대해 알아봅니다.
DK-128 개발환경 설정 아이티즌 기술연구소 김태성 연구원
2장 JSP 개발 환경 설정 이장에서 배울 내용 : JSP 페이지를 작성하기 위한 개발환경을 설정하고, 웹 어플리케이션 개발을 위해 반드시 이해하여야 할 웹 어플리케이션 폴더 구조에 대해 학습한다. 또한 요청된 JSP 페이지가 어떠한 처리과정을 거쳐 응답이 이루어지는가에.
AVR – ATmega103(ATMEL) Compilers & ISP
Chap 6.Assembler 유건우.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
7가지 방법 PowerPoint에서 공동 작업하는 다른 사용자와 함께 편집 작업 중인 사용자 보기
강의 개요. 2014년 가을학기 손시운 지도 교수: 문양세 교수님.
UNIX Unbounded A Beginning Approach
영상처리 실습 인공지능연구실.
Chapter6 : JVM과 메모리 6.1 JVM의 구조와 메모리 모델 6.2 프로그램 실행과 메모리 6.3 객체생성과 메모리
컴퓨터 시스템 하드웨어 컴퓨터 시스템 소프트웨어 C P U Control Unit 입 력 장 치 출 력 장 치 ALU
자바 5.0 프로그래밍.
1. 스크립트 작성 마법사 2. NSIS 스크립트 컴파일
컴퓨터 프로그래밍 기초 [01] Visual Studio 설치 및 사용방법
컴퓨터 개론 및 실습 1주차 2015년 03월 05일.
7주차 실습 FPGA 보드 사용법.
( Windows Service Application Debugging )
학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성. 학습목표 처음 만드는 비주얼 베이직 프로그램 프로그램 실행과 실행 파일 생성.
OpenCV 설정 2.21 만든이 딩딩.
DK-128 개발환경 설정 아이티즌 기술연구소 김태성 연구원
DK-128 개발환경 설정 아이티즌 기술연구소
01. 분산 파일 시스템의 개요 네트워크에 분산된 파일을 사용자가 쉽게 접근하고 관리할 수 있게 해준다.
기초C언어 제2주 실습 프로그래밍의 개념, 프로그램 작성 과정 컴퓨터시뮬레이션학과 2016년 봄학기 담당교수 : 이형원
시스템 인터페이스 Lab1 X-window 및 명령어 사용.
공학도를 위한 C언어 프로그래밍실습1 -통합개발환경 사용법-
슬라이드 쇼의 설정 슬라이드 쇼의 실행 파일과 폴더의 관리 글꼴을 포함해서 저장 웹 페이지로 게시 압축 파일
Installation Guide.
1장 C 언어의 개요 C 언어의 역사와 기원 C 언어의 특징 프로그램 과정 C 프로그램 구조 C 프로그램 예제.
숙제 작성 및 제출 과정 김진하 2008/03/14.
Platform Builder 사용법.
1. SNMP Setting IP 설정 NetAgent Mini 카드에 제공된 CD의 Netility 프로그램을 설치하여 프로그램을 실행시킨다. Netility 프로그램을 실행하면 네트워크에 있는 SNMP 카드를 찾게 됩니다. “Configure”를 선택하면 IP 설정.
1장. C Language Synopsis.
BoardGame 보드게임 따라가기.
Presentation transcript:

컴퓨터 기본 원리 프로그래밍 언어 C 프로그래밍 환경 C 프로그래밍 작성, 컴파일, 링크 및 실행 Chapter 1 C 언어 프로그래밍 개론 컴퓨터 기본 원리 프로그래밍 언어 C 프로그래밍 환경 C 프로그래밍 작성, 컴파일, 링크 및 실행

컴퓨터 기본 원리 컴퓨터 시스템: 하드웨어 + 소프트웨어 하드웨어: 유형의 물리적인 구성요소 소프트웨어: 원하는 결과를 얻기 위해 하드웨어에게 내리는 명령 특정한 작업을 수행하기 위하여 설계된 명령어 집합의 모임

컴퓨터 구조와 하드웨어 표준 하드웨어 구조 Input device(s) Output device(s) Processor (CPU) Central Processing Unit 명령(프로그램)을 해석하고 실행 Memory 주기억장치 & 보조기억장치 데이터와 명령(프로그램)을 저장 Input device(s) 마우스, 키보드, 등. Output device(s) 비디오 디스플레이, 프린터, 등. CPU and memory are physically housed together 표준 하드웨어 구조 Memory (main & auxiliary) Input Devices (such as mouse and keyboard) Processor (CPU) Output Devices (such as video display or printer)

물리적인 구성 Keyboard Monitor Chassis CPU memory disk drives I/O connectors etc.

기억장치(Memory)의 종류 주기억장치 보조기억장치 작업 영역(working area) 프로그램과 데이터를 임시로 저장(프로그램이 실행되는 동안) 보조기억장치 영구적으로 저장(more or less) 프로그램과 그 결과를 보존 플로피 & 하드 디스크 드라이브, CD, 테이프, 등.

주기억장치의 구성 Bit = 하나의 2진수 2진수는 0 이나 1 중 하나의 값만 가질 수 있음 Byte = 8 비트 “Byte Addressable” 주기억장치는 각 위치에 한 바이트의 데이터 단위로 숫자가 부여된 리스트 데이터 항목 당 바이트의 수는 변할 수 있음

보조기억장치의 구성

(input for the program) 프로그램의 실행 Program Computer Data (input for the program) Output

소프트웨어의 여러 유형 사용자가 작성한 응용 소프트웨어 상용 응용 소프트웨어 시스템 소프트웨어(Operating System) word-processor/editor web browser compiler or assembler etc. 시스템 소프트웨어(Operating System) DOS, MS- Windows(3.x, 95, 98, NT), MacOS, UNIX, etc.

사용자 인터페이스의 여러 유형 명령어 입력(Command-line) 메뉴 키워드와 문자를 직접 입력 DOS 와 UNIX 메뉴 DOS and Windows의 부분 GUI (Graphical User Interface) 아이콘을 클릭 “event-driven” 이라고도 부름 MacOS, Windows

프로그래밍 언어의 계층

고급언어와 고급언어가 아닌 것들 ... 고급언어 (HLL) 자연어에 가장 가까움 단어, 숫자, 수학 기호로 구성 하드웨어가 직접 이해할 수 없음 “portable” 소스 코드 (하드웨어와 독립) Java, C/C++, COBOL, FORTRAN, BASIC, Lisp, Ada, 등. 기계어 (lowest level) 인간의 자연어와는 가장 거리가 멀지만, 하드웨어의자연어에 가장 가까움 0과 1로만 구성 하드웨어가 직접 이해할 수 있음 Portable하지 않음 (하드웨어에 종속)

어셈블리어 (middle level) 기계어를 사람이 어느 정도 읽을 수 있게 만든 버전 단어, 약자, 문자, 숫자 등이 0과 1을 대치함 사람이 읽을 수 있는 코드에서 기계가 실행 가능한 코드로 쉽게 변환할 수 있음 기계어처럼 portable하지 못함 (하드웨어에 종속)

소스 코드를 기계어 코드로 바꾸는 방식 “프로그램의 컴파일” “컴파일러(Compiler)” “어셈블리(Assembly)” 소스 코드를 기계어 코드로 바꾸는 방식 “프로그램의 컴파일” 고급 언어로 된 소스 코드를 기계어 코드(object, or executable)로 번역함. “컴파일러(Compiler)” HLL 소스 코드를 기계어(object, or executable) 코드로 번역하는 프로그램. “어셈블리(Assembly)” 어셈블리어로 된 소스 코드를 기계어 코드(object, or executable)로 번역함. “어셈블러(Assembler)” 어셈블리어 소스 코드를 기계어(object, or executable) 코드로 번역하는 프로그램. Compilers need to know the specific target hardware

컴파일러 vs. 어셈블러 vs. 인터프리터 Compiler, Assembler, or Interpreter Source 컴파일러와 어셈블러 번역(translation)은 사용자가 명령하는 별도의 단계 번역(translation)은 프로그램의 실행 시간이 아닌 “off-line”에서 수행 인터프리터(Interpreters) – 소스 코드를 목적 코드(object code)로 번역하는 다른 방식 소스 코드에서 목적 코드로의 해석(interpretation)은 별도의 단계가 아님 해석(translation)은 실행 시간인 “on-line”에서 수행 Compiler, Assembler, or Interpreter Source Code Object Code

C와 C++ 프로그래밍 언어 C 언어 C++ 언어 고급언어의 편리성과 어셈블리어의 강력함을 가짐 컴퓨터 응용의 여러 분야에서 사용이 증가 절대로 어려운 언어가 아님!! C++ 언어 C 언어의 확장 언어(superset) 객체 지향 프로그래밍 언어(OOP)

C 프로그램 실행 C 프로그램을 작성, 컴파일, 링크, 실행하는 단계: 1. 문서 편집기를 사용하여 프로그램(소스 코드)을 입력한다. 2. 파일명(.c로 끝남)을 지정하여 저장한다. 3. 입력 파일이 필요하면 문서 편집기로 작성하고 저장한다. 4. C 컴파일러(Visual C++, Turbo C, GNU C, …)를 사용하여 소스 코드를 컴파일, 링크, 실행한다. 5. 오류가 없다면, 필요한 파일들을 인쇄, 보관하고 C 컴파일러에서 빠져 나온다. 6. 오류가 있다면, 디버깅한 내용을 저장하고 단계 4부터 반복한다.

Visual C++을 이용한 예제 프로그램 1의 실행

Visual C++을 이용한 예제 프로그램 1의 실행(계속) .

Visual C++을 이용한 예제 프로그램 1의 실행(계속)

Visual C++을 이용한 예제 프로그램 1의 실행(참고) 1. Microsoft Visual C++ 6.0 IDE를 실행시킨 후, File -> New 메뉴를 선택한다. 2. New 대화상자가 열리면 Projects 탭의 Win32 Console Application 항목을 선택하고, Project name: 항목에는 해당 프로그램의 프로젝트 이름을 입력한다. 그리고 Location 항목에는 프로젝트가 저장될 폴더 위치를 지정한다. 설정을 마치면 OK 버튼을 눌러 다음으로 진행한다. 3. Win32 Console Application 대화상자가 나타나면서 생성할 프로그램에 대한 기본 골격을 생성할 수 있도록 사용자에게 설정 내용을 물어온다. 여기에서는 기본적인 콘솔 프로그램 작성이 목적이므로 An empty project 항목을 선택하고 Finish 버튼을 눌러서 프로그램 생성을 마친다. 4. Finish 버튼을 누르면 New Project Information 대화상자가 나타나는데 이 대화상자에는 지금까지 설정한 내용을 보여준다. 이 대화상자에서 OK 버튼을 누르면 소스 코드 파일을 생성하기 시작한다. 5. 프로그램을 위한 프로젝트 파일이 생성되면 이 프로젝트에 새로운 소스 파일을 포함시킨다. 6. 원시 코드 파일을 생성하여 프로젝트에 추가하기 위해서 File-> New 메뉴를 선택한다. 7. New 대화상자가 열리면 Files 탭의 C++ Source File을 선택하고, Add to project: 항목에 체크 표시를 한 후, File: 항목에는 해당 소스 파일 이름을 정하여 입력한다. 모든 입력 및 설정이 끝나면 OK 버튼을 누른다. 8. 지정한 이름의 소스 파일을 편집기가 열면, 이 파일에 프로그램을 입력한다. 9. File -> Save 메뉴를 선택하여, 소스 파일에 대한 입력이 끝난 후에 프로그램 파일을 저장한다. 10. 해당 파일을 컴파일하기 위하여 Build -> Compile 혹은 Build -> Build 메뉴를 선택한다. 11. 정상적으로 컴파일이 되어 .exe로 끝나는 실행 파일이 생성되었으면, Build -> Execute 메뉴를 선택하여 한글 MS-DOS 창에서 실행한다.