반응형

 

if else-if문

9번 ~ 25번줄 : if else-if문을 이용한 구문

 

11번째줄 : iScore >= 90이 아니면 그밑에 있는 else if문을 만나서 실행

iScore >= 90이면 A출력

 


 

증감 연산자 

8번 ~ 12번 : 모두 a 변수의 값을 1 증가 시킨다.

10번 : 증감 연산자

 

증감 연산자는 전위 표기법과 후위 표기법이 있다.

 

14번 : 전위 표기법

17번 : 후위 표기법

 


상수

3번줄 : 상수 선언 - 상수는 전체 대문자로 지정

10번줄 : 정수 데이터 나누기 연산은 몫만 취한다.

16번줄 : c는 정수형이나 실수형 변수와 연산을 수행하기 위해 자료형이 변경된다.

 

3번 = const double pi = 3.141592

==> 변경 불가!!!!!!!!!!!(중요)

반응형

'Programming Language > C' 카테고리의 다른 글

c언어 #17  (0) 2020.03.23
c언어 #16  (0) 2020.03.23
C언어 #14  (0) 2020.03.23
c언어 #13  (0) 2020.03.21
c언어 #12  (0) 2020.03.21
반응형

짝수, 홀수 판별

<비교판단>

if (조건식)

{ 조건문을 만족할 경우 작업의 시작점

               작업;

}   끝지점

 

c언어에서 참 거짓은 1 또는 0 값을 의미한다.

true 또는 false 라는 데이터 단위가 없다.

boolean 또는 bool 자료형이 없다.

 


조건 연산자 : 작업이 if문과 유사하다.

- 물음표 연산자라고도 한다.

(조건문) ? 조건 만족할 경우 처리 : 불만족 처리;

 

ex ) (Score >= 80) ? puts("합격") : puts("불합격");

반응형

'Programming Language > C' 카테고리의 다른 글

c언어 #16  (0) 2020.03.23
C언어 #15  (0) 2020.03.23
c언어 #13  (0) 2020.03.21
c언어 #12  (0) 2020.03.21
c언어 #11  (0) 2020.03.21
반응형

비어있는 zip 파일 준비

 

 

RETN에 커서를 두고 더블클릭을 하면

 

이런 화면이 뜬다.

 

이렇게 칸에다가 mov eax, 1을 하고 Assemble을 눌러준다. 

 

그러면

 

 

빨간줄이 표시 되면서 넣어진다.

 

MOV EAX, 1 은 EAX라는 공간에 1이라는 값을 넣어라 라는 명령이다.

 

여기서 MOV는 연산자가 되는것이고, EAX, 1은 피연산자가 되는것이다.

 


그래서 EAX가 뭐야?

- EAX 레지스터는 산술, 논리, 연산을 수행하며 함수의 반환값이 이 레지스터에 저장!

덧셈, 나눗셈, 곱셈 등의 명령은 모두 EAX레지스터를 사용한다!

함수의 반환값이 EAX 레지스터에 저장되므로 호출 함수의 성공 여부 또는 실패 여부를 쉽게 알아볼수 있다!

 


실행하려면

메뉴바에 있는 이 작은 모양 클릭!!!

 

EAX값이 1로 바꿔져 있는 것을 볼 수 있다.

반응형

'Programming Language > assembly language' 카테고리의 다른 글

어셈블리어 개념  (0) 2020.03.23
반응형

어셈블리어 : 기계어와 일대일 대응이 되는 컴퓨터 프로그래밍의 저급 언어이다.

어셈블리어는 컴퓨터 구조에 따라 사용하는 기계어가 다르다.

 

기계어는 실제로 컴퓨터의 cpu가 읽어서 실행할 수 있는  0과 1로 이루어진 명령어의 조합이다. 이러한 각 명령어에 대해 사람이 알아보기 쉬운 니모닉 기호를 정해 사람이 좀 더 쉽게 컴퓨터의 행동을 제어할 수 있도록 한 것이 어셈블리 언어이다.

 

어셈블러 : 니모닉 기호를 opcode로 변환함.

기계어를 어셈블리어로 바꾸는 것은 역어셈블러라고 한다.

 

ex )

10110000 01100001

 

=> mov al, 061h

 


ollydbg 다운로드

http://www.ollydbg.de/

 

OllyDbg v1.10

 

www.ollydbg.de

UDD, plugins path 설정후 레나 튜토리얼 1번 다운후 

ollydbg.ini 추가

반응형

'Programming Language > assembly language' 카테고리의 다른 글

mov  (0) 2020.03.23
반응형

<getchar(), putchar()>

 

// 표준 입출력 함수들 중에서 문자 하나의 입출력을 담당하는 함수 

=> getchar(), putchar()


11번째줄 : getchar() 함수는 키보드로 부터 문자 하나를 입력받고 해당 문자의 아스키 코드 값을 반환한다.

cIn = getchar(); => 아스키 코드값인 정수 값을 cin 문자형 변수에 대입하는 문장이다.


 

// puts(), gets() : 하나 이상의 문자(문자열)를 입력 또는 출력하는 함수

반응형

'Programming Language > C' 카테고리의 다른 글

C언어 #15  (0) 2020.03.23
C언어 #14  (0) 2020.03.23
c언어 #12  (0) 2020.03.21
c언어 #11  (0) 2020.03.21
c언어 #10  (0) 2020.03.21
반응형

<c언어로 calc만들기!>

 

#include

int main()
{

int iNum1 = 0, iNum2 = 0, iResult = 0;
char cOper;


printf("연산식을 입력하세요!\n예) 1 + 2 엔터\n");


scanf("%d %c %d", &iNum1, &cOper, &iNum2);


if (cOper == '+')  => 연산자가 + 일때
{
iResult = iNum1 + iNum2;
}
if (cOper == '-')  => 연산자가 - 일때
{
iResult = iNum1 - iNum2;
}
if (cOper == '*') => 연산자가 * 일때
{
iResult = iNum1 * iNum2;
}
if (cOper == '/') => 연산자가 / 일때
{
iResult = iNum1 / iNum2;
}
if (cOper == '%') => 연산자가 % 일때
{
iResult = iNum1 % iNum2;
}


printf("%d %c %d = %d\n", iNum1, cOper, iNum2, iResult);

return 0;
}


<printf문은 최대한 적게 사용하기!>

반응형

'Programming Language > C' 카테고리의 다른 글

C언어 #14  (0) 2020.03.23
c언어 #13  (0) 2020.03.21
c언어 #11  (0) 2020.03.21
c언어 #10  (0) 2020.03.21
c언어 #9  (0) 2020.03.21
반응형

<checkOdd>

 

짝수
홀수

 

6번째줄 : 필요 변수 선언

15번째줄 : 

조건문

 

조건문 : 어떠한 조건을 판단하여 처리하는 문장

if ((iNum % 2) == 0)  => iNum이 2로 나누어질때 나머지가 0이면 printf("짝수\n"); 실행
{
printf("짝수\n");
}
else
{
printf("홀수\n"); => 0이 아니면 printf("홀수\n"); 실행
}

반응형

'Programming Language > C' 카테고리의 다른 글

c언어 #13  (0) 2020.03.21
c언어 #12  (0) 2020.03.21
c언어 #10  (0) 2020.03.21
c언어 #9  (0) 2020.03.21
c언어 #8  (0) 2020.03.21
반응형

<Scanf>

open my birthday

 


 

// scanf(), printf() : 형식이 지정된 표준 입출력 함수
// 괄호 사이에 큰따옴표를 사용하고 큰따옴표 사이에 형식 지정문자열(포멧스트링)을 사용
// 자료형에 따라 %d, %f, %lf, %c, %s 등을 사용한다.
// printf()는 큰따옴표 사이에 출력 문자열을 사용할 수 있다.
// scanf()는 큰따옴표 사이에 포멧스트링만 사용할 수 있다.
// 변수명 앞에 &기호를 반드시 붙여야한다.
// 변수명 앞에 &기호는 해당 변수의 실제 메모리 주소를 말한다.

 


 

11번째줄 :

만약 &기호를 생략하면 "nullptr" 오류가 발생한다.

nullptr : 주소 또는 포인터 사용을 잘못한 경우 주로 발생하는 오류 => 자신의 코드에서 주소 또는 포인터 사용 부분 확인

 


 

 

%hu : unsigned에 short 형인 2byte

반응형

'Programming Language > C' 카테고리의 다른 글

c언어 #12  (0) 2020.03.21
c언어 #11  (0) 2020.03.21
c언어 #9  (0) 2020.03.21
c언어 #8  (0) 2020.03.21
c언어 #7  (0) 2020.03.21

+ Recent posts