티스토리 뷰

프로그래밍 개요

#1 프로그래밍의 정의

프로그램 : 하드웨어를 동작시켜 특정 작업을 수행하는 소프트웨어,다향한 종류의 컴퓨터 프로그램 스마트폰앱
프로그래밍 : 인간이 컴퓨터에 명령하는 작업지서를 만드는 작업
프로그래밍언어 : 작업에 지시에 사용되는 언어



1. 고급 언어와 저급 언어

High level language -> 인간이 이해하기 쉬운언어
  -> C, C++, c#, JABVA, Pascal, Fortran, Cobol, Python
Low level language -> 기계가 이해하기 쉬운언어
  -> 기계어, 어셈블리어


2. 고급언어와 저급언어의 특징
1) 저급언어(low level language)
  -> CPU가 처리하는 명령어와 1대1로 대응
  • 1. CPU마다 사용하는 명령어가 다름
  • 2. CPU 내부 동작을 이해해야 프로그래밍이 가능
  • 3. 하드웨어에 따른 별도 프로그래밍이 요구됨


2) 고급언어(high level language)
  -> 해당 하드웨어에 맞게 번역하는 프로그램을 이용
  • 1. 유지보수가 비교적 쉬움
  • 2. CPU 동작을 자세히 알아야 할 필요가 없음
  • 3. 하드웨어마다 별도의 프로그래밍 불필요

#2 프로그래밍 절차

・다른언어를 사용하는 사람간의 대화에 통역사가 필요
・컴퓨터는 인간의 언어를 이해할수 없음
. 인간의 언어를 컴퓨터가 이해하는 언어로 번역이 필요
컴파일러 : 컴퓨터가 이해하는 언어로 번역하는 프로그램
ex)

#inclube 
int main()
{
printf("print result"); 01001010101
......... -> 0101010
....... compilre 01010
} * 기계마다 별도의 프로그램이 불필요
C언어 프로그래밍 절찰
소스파밍 .c 오프젝트파일 .obj 실핼파일 exe
{ Library
printf("print result"); 01001010101 + 0101010100
......... -> 0101010 -> linker -> 101010
....... compiler 01010 + 1010100
} object file

#3 C언어의 특징


 1. 1972년 AT&T의 벨연구소의 데니스리치와 켄톰슨에 의해 개발
 2. B언어를 기반으로 하여 개발
 3. 고급언어인 C언어로 작성된 최초의 운영체제가 UNIX
 4. C언어의 표준 : ANSI(American National Standard Institute) C

 간결하고 효율적인 언어 우수한 이식성

  • 포인터와 메모리 관리 기능 . 다양한 CPU와 플랫폼의 컴파일러 지원
  • 작은 크기의 프로그램
  • 빠른 실행 속도

 다소 배우기가 어려움
  • 비트 포인터 메모리 할당 해제 등의 관리

통합개발환경 구축

#1 통합개발환경 소개

1) 프로그램 개발에 필요한 S/W
2) 텍스트 편집기, C컴파일러

텍스트 에디터 : 메모장, editplus, notepad++
컴파일러 : GNU C/C++ compile, Boland Turbo C, 온라인 컴파일러, 비쥬얼 스튜디오 C컴파일러


1. 컴파일러 설치
UNIX/Linux : 설치여부체크, $ gcc -v, http://gcc.gun.org/install
Mac OS X : Xcode, https://developer.apple.com.xcode/
Windows : MinGW, wwww.mingw.org
  • Integrated Development Environment
  • 프로그램 개발 절차를 하나의 프로그램에서 수행되도록 제공하는 환경
  • 소스코드 작성, 컴파일, 링크, 실행, 디버깅 등을 하나의 프로그램에서 수행
#프로그램설치
1. Visual Studio(https://www.visualstudio.com/)
    Visual Stuido Community 20xx
2. Dev C++(https://www.bloodshed.net/dev/devcpp.html)
3. Code:Blacks (https://www.codeblocks.org)
4. IDE one (https://ideone.com)
5. 기타(온라인 컴파일러)
    GeeksforGeeks(https://ide.geeksforgeeks.org/wuz07v)
    Fresh2Refresh(https://compilers,fresh2refresh.com)
    codingground(https://www.tutorialspoint.com/compile_c_online.php)

'JAVA기반스마트웹개발2021 > 프로그래밍언어 활용' 카테고리의 다른 글

반복문  (0) 2021.07.26
조건문  (0) 2021.07.26
연산자  (0) 2021.07.25
변수와 데이터 타입  (0) 2021.07.25
프로그램 기본 구조  (0) 2021.07.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함