'스마트컨트롤러'에 해당되는 글 9건

  1. 2013.03.12 2013.03.12
  2. 2013.03.11 2013.03.11
  3. 2013.03.08 2013.03.08
  4. 2013.03.08 2013.03.06
  5. 2013.03.08 2장 예제 소스
  6. 2013.03.07 2013.03.07
  7. 2013.03.06 1장 예제 소스
  8. 2013.03.05 2013.03.05
  9. 2013.03.05 2013.03.04

2013.03.12

스마트컨트롤러 2013. 3. 12. 11:52

*2013.03.12
*대입 연산자 기준으로 왼쪽은 Lvalue, 오른쪽은 Rvalue
*Compiler는 프로그램을 최적화 하려고 한다.
 ex)Register의 정보를 유지하다가 한번에 Bus를 이용해 Memory에 넘겨준다.
*Cast연산자 : 프로그램 내에서 명시적으로 자료형을 변환시킨다-형변환, (자료형)수식
*묵시적 형변환 = 프로그램이 자동적으로 형변환하는거, 명시적 형변환 = 자용자가 수동적으로 형변환
*printf() 함수
형식지정자 -%d : 출력값을 부호가 있는 십진수의 정수(decimal)로 바꾼다
    -%f : 출력값을 실수형(float)으로 바꾼다.
    -%c : 출력값을 분자형(char) 으로 바꾼다.
    -%s : 출력값을 문자열형(string)으로 바꾼다.
    -%o : 출력값을 8진수로 바꾼다.
    -%x : 출력값을 16진수로 바꾼다.
*운영체제가 메모리를 임시로 할당하는것을 '버퍼' 라고 한다.
*프로그램의 제어란 프로그램의 실행 순서를 정하는 것을 말한다.
*복합문 : 여러 개의 연속된 명령문을 하나로 묶어 하나의 명령문으로 취급하여 실행하는 것. '{}'
*선택문 : 두 가지 이상의 명령문들 중에서 하나만 선택하여 실행하게 하는 명령문으로 if,switcth
*반복문 : 같은 명령문을 필요한 횟수만큼 반복하여 실행하는 명령문으로 for,while,do-while

 

<형식 지정자>

'스마트컨트롤러' 카테고리의 다른 글

2013.03.11  (0) 2013.03.11
2013.03.08  (0) 2013.03.08
2013.03.06  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.05  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

2013.03.11

스마트컨트롤러 2013. 3. 11. 10:16

2013.03.11
*아스키 코드값 1을 넣기 위해선 '1' <-- 따음표 안에 넣어야 코드값 으로 인식
*문자열은 하나 이상의 연속된 문자를 말하며, 다음과 같이 큰따옴표("")로써 표시한다.
*문장끝에 'NULL' 값이 있으면 '문자열', 없으면 '문자배열'
*표현식 = 변수,상수,연산자로 구성된 식
*표현식은 산술식과 논리식이 있다.
*연산자 '%'는 나눗셈의 나머지를 구하는 연산자이다.
*비교 연산자 '='를 복수로 사용할때 모든 부호는 왼쪽에 붙는다
*컴퓨터 상에서 논리는 0이냐 아니냐 에따라 0이면 '거짓', 아니면 '참'

<ASCII CODE>

 

 

<논리 연산자>

 

 

*몫과 나머지 구하는 소스

#include <stdio.h>

int main()
{
  char cNum1;
  char cNum2;
  cNum1 = 100 % 3;  //'%'는 나머지를 구함
  cNum2 = 100 / 3;  //'/'는 몫을 구함

  printf("몫은 %3d 입니다.\n", cNum2);
  printf("나머지는 %d 입니다.\n", cNum1);
  
  return 0;
}

 

*증감 연산

#include <stdio.h>

int main()
{

  char cNum;
  char cNum2;
  cNum = 100;
  
  printf("cNum의 초기 값은 %3d 이다.\n", cNum);
  cNum++;
  printf("cNum의 1차 증가 값은 %3d 이다.\n", cNum);
  ++cNum;
  printf("cNum의 2차 증가 값은 %3d 이다.\n", cNum);
  cNum = cNum + 1;
  printf("cNum의 최종 증가 값은 %3d 이다.\n\n", cNum);
  
  cNum--;
  printf("cNum의 1차 감소 값은 %3d 이다.\n", cNum);
  --cNum;
  printf("cNum의 2차 감소 값은 %3d 이다.\n", cNum);
  cNum = cNum - 1;
  printf("cNum의 최종 값은 %3d 이다.\n", cNum);
  
  cNum2 = ++cNum;
  printf("cNum은 %3d 이고 cNum2는 %3d 이다.\n", cNum, cNum2);  

  return 0;
}  

 

'스마트컨트롤러' 카테고리의 다른 글

2013.03.12  (0) 2013.03.12
2013.03.08  (0) 2013.03.08
2013.03.06  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.05  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

2013.03.08

스마트컨트롤러 2013. 3. 8. 14:02

2013.03.08

*변수 앞에 '&'(ampersand)는 주소연산자로 scanf() 함수내에서 변수의 주소를 나타냄
*정수의 크기 : char <= short <= int <= long
*sizeof() : 연산자, 함수랑 비슷하니 주의!!!
*숫자앞에 '0'이 붙으면 8진수로 인식된다.
*숫자앞에 '0x'가 붙으면 16진수로 인식된다.
*실수형의 데이타는 메모리 내에서 '부호부분', '가수부', '지수부' 세부분으로 나누어 저장
*실수형 상수의 자료형은 double 형으로 간주된다.(float 형은 ex)4.2f  <--- 이런식으식 사용)

 

 <IEEE 실수 표기>

'스마트컨트롤러' 카테고리의 다른 글

2013.03.12  (0) 2013.03.12
2013.03.11  (0) 2013.03.11
2013.03.06  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.05  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

2013.03.06

스마트컨트롤러 2013. 3. 8. 10:55

* ' = ' 는 대입연산자 오른쪽 내용을 왼쪽으로 넣는다
* %d (decimal = 10진수) , %x (hexa = 16진수)
* #define = 정의하다
* 자료형(Data type)
* 메모리의 구성 : main memory(램)+secondary memory(하드디스크,플라피 디스켓등)
* 8bit = 2nibble = 1byte

'스마트컨트롤러' 카테고리의 다른 글

2013.03.11  (0) 2013.03.11
2013.03.08  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.05  (0) 2013.03.05
2013.03.04  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

*예제 p2-1

#include <stdio.h>

int main()
{
 int num;
 num = 2147483647//정수의 최대값
 num = num + 2;
 printf("양의 최대값 보다 2가 큰 값 %d\n", num);
 num = num - 2;
 printf("최대값 %d\n", num);

}

*예제 p2-2

// 키보드로부터 숫자를 입력받아 화면에 출력하는 프로그램
#include <stdio.h>

int main()
{
  int number;
  
  printf("Please enter a number : ");
  scanf("%d"&number);  //'&'해당 변수의 주소 포인트
  printf("The number you typed is %d\n", number);

}

 

*예제 p2-3 


#include <stdio.h>

main()
{
  int x, y;
  x = 2;
  y = x + 5;
  
  //자료형의 경우
  
  printf("The size of int is %3d bytes\n"sizeof(int));
  printf("The size of short is %3d bytes\n"sizeof(short));
  printf("The size of long is %3d bytes\n"sizeof(long));
  
  //변수의 경우
  printf("The size of x is %3d bytes\n"sizeof x);

  //수식의 경우
  printf("The size of (x + 2) is %3d bytes\n"sizeof(x + 2));

}


*예제 p2-4


#include <stdio.h>

int main()
{
  unsigned int num1 = 67U;
  unsigned long int num2 = 89UL;  
  
  printf("%5d: size of 67U is %3d byte\n", num1, sizeof(67U));

  printf("%5d: size of 89UL is %3d byte\n", num2, sizeof(89ul));

}


*예제 p2-5



#include <stdio.h>

int main()
{
  int inum = 23;
  short snum = 23;
  
  printf("size of int 23 is %3d byte\n"sizeof(inum));

  printf("size of short 23 is %3d byte\n"sizeof(snum));

}




*예제 p2-6


#include <stdio.h>

int main()
{
  int number = 67;
  // 10 진수, 8진수, 16진수로 출력
  
  printf("The value of 67 in decimal is %3d\n", number);
  printf("The value of 67 in octal is %3o\n", number);
  printf("The value of 67 in hexa decimal is %3x\n", number);
  
  //8진수와 16진수를 10진수로 화면에 출력
  
  printf("The decimal value of 020 & 0x20 is %5d & %3d\n"0200x20);

}


 

*예제 p2-7


#include <stdio.h>

int main()
{
  float fnumber = 45000.67;
  
  printf("%f\n", fnumber);
  printf("%9.4f\n", fnumber);
  printf("%e\n", fnumber);
  
  
}


 

*예제 p2-9


#include <stdio.h>

int main()
{
  char ch;
  printf("Please enter any character: ");
  scanf("%c"&ch);
  printf("The ASCII code for character %1c is %3d\n", ch, ch);
  
  
  ch = '1' + '1';
  printf("The ASCII code for character %1c is %3d\n", ch, ch);
  return 0;
  
  
}


 *예제 p2-10


#include <stdio.h>

int main()
{
  printf("10진수 65: %c\n"65);
  printf("16진수 40: \x40\n");
  printf("8진수 73: \073\n");
  printf("백슬러쉬 \\, 작은 따옴표 \',큰따옴표 \"\n");
  printf("2 bell sound \a\a\n");
  
  
}


*예제 p2-11


#include <stdio.h>

int main()
{
  char word[30];

  printf("Please enter anything: ");
  scanf("%s", word);
  printf("%s, this is what you typed\n", word);
  
  
}


*예제 p2-15


#include <stdio.h>

main()
{
  int num = 17;
  printf("num +=5: %d\n", num += 5);  //22
  printf("num -=5: %d\n", num -= 5);  //17
  printf("num *=5: %d\n", num *= 5);  //85
  printf("num /=5: %d\n", num /= 5);  //17
  printf("num %=5: %d\n", num %= 5);  //2
  
  return 0;

}


 

*예제 p2-16


#include <stdio.h>

main()
{
  int intA = 14, intB = 3;
  float floatC = 0;

  floatC = intA / intB;
  printf("%f\n", floatC);

  floatC = (float) intA / intB;
  printf("%f\n", floatC);
  
}


 

 

'스마트컨트롤러 > 예제' 카테고리의 다른 글

1장 예제 소스  (0) 2013.03.06
Posted by 알 수 없는 사용자
,

2013.03.07

스마트컨트롤러 2013. 3. 7. 15:15

2013.03.07
*변수는 메모리의 주소대신 사용하는 메모리 공간의 이름, 필요에 따라 변함
*토큰은 프로그램 내에서 어휘적인 최소단위
*식별자를 만드는 방버
   -첫 글자는 영어의 알파벳이나 밑줄(_)이 올 수 있다.
   -그 뒤에는 영어, 숫자, 밑줄이 올 수 있다.
   -하나의 식별자는 보통 32문자까지 허용된다.
*상수(Constant value)는 미리 정해져 바뀌지 않는 값
*unsigned(양수만포함) - 변수 설정 할때 사용
*정수형(char, short, int)
*'Alt누른 상태에서 + 오른쪽 숫자키' => ASCII Code 로 나타남

 

'스마트컨트롤러' 카테고리의 다른 글

2013.03.11  (0) 2013.03.11
2013.03.08  (0) 2013.03.08
2013.03.06  (0) 2013.03.08
2013.03.05  (0) 2013.03.05
2013.03.04  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

*예제 p1-2.c

#include <stdio.h>

int main()
{
 printf("the");
 printf(" first\n");
 printf("C program");
 printf("nexample\n");
}

*예제 p1-3.c

//숫자를 출력하는 프로그램으로 변수 사용의 예를 보여준다
#include <stdio.h>

int main()
{
 int number; /*int형 변수 number의 선언 */

 number = 3;
 printf("The number is %d\n",number);
}

*예제 p1-4.c

//한 변의 길이가 3m인 정사각형의 넓이를 구하는 프로그램

#include <stdio.h>

int main()
{
 int length;
 int area;

 length = 3;
 area = length * length; //곱셈연산
 printf("The area of rectangular is %d square meter\n",area);
}

 

*예제 p1-5.c

//두수의 세제곱의 합을 구하는 프로그램

#include <stdio.h>

int numsquare(int number);

int sum(int n1, int n2);

int print(int num);

int main()
{
 int num1, num2, square1, square2, sum_num;

 num1 = 3;
 num2 = 5;
 square1 = numsquare(num1);
 square2 = numsquare(num2);
 sum_num = square1 + square2;
 print (sum_num);
}

 int numsquare(int number)

{
 return(number * number);
}

 int sum(int n1, int n2)

{
 return(n1 + n2);
}

 int print(int num)

{
 printf("The sum of square of two numbers is %d\n",num);
}

*예제 p1-6.c

//원의 둘레를 계산하는 프로그램

#include <stdio.h>
#define PI 3.1416 //상수 3.1416을 PI로 정의

int main()
{
 int radius;  //원의 반지름
 float circumference; //원의 둘레
 
 radius = 5;
 printf("The radius of circle is %d m\n", radius);
 circumference = (radius + radius) * PI;
 printf("the circumference of circle is %7.2f m\n",circumference);
}

 

 

'스마트컨트롤러 > 예제' 카테고리의 다른 글

2장 예제 소스  (0) 2013.03.08
Posted by 알 수 없는 사용자
,

2013.03.05

스마트컨트롤러 2013. 3. 5. 15:18

2013.03.05
*기계어(2진수-논리-y/n) = Assembly(어셈블리어)
*언어를 기계어로 바꾸는 과정을 'Compile' 이라하고 변환 프로그램을 'Compiler'라고 한다.
*CPU를 컴퓨터에서 '마이크로컨트롤러'라고 함
*CPU와 메모리를 연결하는 선의 갯수(선 하나당 1bit)에 따라 컴퓨터 성능을 나타냄
*CPU > 메모리(RAM) > HDD  = 속도/가격 비례, 용량에 반비례
*rpm 자료 읽는 속도 단위(노트북-4800, 컴퓨터-7200)
*선들의 다발 = Bus(주소의 끝과 크기가 동일)

*CPU전송 원리
1.보낼 위치 탐색
2.정보 전송

*cl(컴파일러중 하나)
cl /P main.c - 전처리 i파일 생성 ----- .i 생성
cl /Fa main.c - 목록파일 이름 설정 ----- .asm, .obj, .exe

 

'스마트컨트롤러' 카테고리의 다른 글

2013.03.11  (0) 2013.03.11
2013.03.08  (0) 2013.03.08
2013.03.06  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.04  (0) 2013.03.05
Posted by 알 수 없는 사용자
,

2013.03.04

스마트컨트롤러 2013. 3. 5. 15:14

2013.03.04
CPU
1.register(메모리)-저장
2.CU(제어,유닛)-제어
3.ALU(산술,로직,유닛)-계산
C언어 = 전처리 언어(pre-process) + 순수 C언어

예제 p1-1.c

//
#include <stdio.h>

int main()
{
 printf("the first C program example.\n");
 return 0;
}

//

*앞으로 void => int 로 변경해서 사용

 

*Compile 5단계
목적에 맞게 소스 코드를 작성한다
1단계 - .c로 저장 처음 소스코드를 작성하고 확장자가 c롤 저장하게된다. 이곳엔 전처리문법과 c문법을 포함하고 있다.
2단계 - pre-precess(전처리) #include 나 #define 등을 먼저처리, 전처리후 생기는 파일, 확장자는 i 이곳엔 순수 C만을 포함하고있다.
3단계 - compile(컴파일), 어셈블리에서 하는 단계를 미시적 컴파일이라고함
4단계 - Assembly(어셈블리어를 기계어로 변환) 미시적 컴파일후 생기는 파일, 오브젝트 파일이라고 함, 기계어가 포함되어있다.
 윈도우 확장자는 .obj, 리눅스 확장자는 .o
5단계 - link 라이브러리, 함수등을 연결시켜 실행가능한 프로그램을 생성하는 단계
 프로그램을 실행할수있는 실행프로그램이 생성된다, 윈도우 확장자는 .exe(execute-실행하다), 리눅스 확장자는 없다.
 어셈블리후 생기는 파일, 어셈블리 파일이라고 함, 윈도우 확장자는 .asm, 리눅스 확장자는 .s

'스마트컨트롤러' 카테고리의 다른 글

2013.03.11  (0) 2013.03.11
2013.03.08  (0) 2013.03.08
2013.03.06  (0) 2013.03.08
2013.03.07  (0) 2013.03.07
2013.03.05  (0) 2013.03.05
Posted by 알 수 없는 사용자
,