본문 바로가기

c언어30

[C언어] 제 12 강 : 비트연산자 비트 연산자는 비트단위로 연산을 진행하는 연산자입니다. 오직 정수범위에서만 해당되며 실수에 대해서는 비트 연산이 불가능합니다. 비트 연산자는 대부분이 이항 연산자입니다. -비트연산자 & : 비트단위로 AND 연산을 한다. | : 비트단위로 OR 연산을 한다. ^ : 비트단위로 XOR 연산을 한다. ~: 단항 연산자이며 피연산자의 모든 비트를 반전시킨다. -비트 쉬프트 연산자 > : 피연산자의 비트 열을 오른쪽으로 이동시킨다. 예를 들어보겠습니다. n1과 n2라는 두 개의 피연산자가 있습니다. n1은 0101, n2는 1100 일때 n1 & n2는 각각의 비트를 AND연산하게 됩니다. 0101 1100 & (AND연산 진행) = 0100 이 되겠죠~? 이번에는 ~n1 연산을 해봅시다. 피연산자의 모든 비트.. 2012. 1. 16.
[C언어] 제 11 강 : 서식문자 printf 와 scanf의 서식문자에 대해서 좀 더 자세하게 알아보도록 하겠습니다. 간단한 설명은 지난 강의에서 소개한적이 있습니다. printf문과 scanf문의 서식문자는 비슷하면서도 다르므로 혼동할 수 있으니 주의하시구요~~~ [Printf함수의 서식문자] %d : int (부호 있는 10진수 정수) %u : unsigned int (부호 없는 10진수 정수) %o : unsigned int (부호 없는 8진수 정수) %x, %X : unsigned int (부호 없는 16진수 정수) %f : double (10진수 방식의 부동소수점 실수) %e, %E : double (e 또는 E 방식의 부동소수점 실수) %g, %G : dobule (값에 따라 %f와 %e사이에서 선택) %c : int (값에.. 2012. 1. 16.
[C언어] 제 10 강 : 메모리 구조와 변수 메모리 구조는 C언어를 공부하는데 아주 중요한 부분을 차지합니다. 포인터나 배열을 다룰때도 이러한 개념이 바탕이 되기때문에 피할 수 없는 부분인거죠... 피할 수 없으면 즐기는것이 자신이 원하고자 하는 바를 이룰 수 있게 하는 필수 요소입니다. 어떤분은 자신이 문제를 풀다가 틀리고, 모르는 부분이 나올때 희열감을 느낀다고 하더랍니다. 자신이 모르고 배워야하는 부분이 아직 남아 있다는 것을 느끼기 때문이라더군요... 존경스럽습니다....ㅠㅠㅠㅠ... 여기서 메모리라고 함은 하드디스크, 램, 레지스터, 캐쉬를 포합니다. 그럼 이러한 모든 메모리를 이해해야되냐구요? 절대 아닙니다. 고맙게도 우리가 사용하는 운영체제는 이러한 메모리들을 통합하여 '가상 메모리'라는 가짜 메모리를 만들어줍니다. 즉, 가상 메모리 .. 2012. 1. 12.
[C언어] 제 9 강 : 문자의 표현 사실 컴퓨터는 바이너리코드 외에는 아무것도 모르는 상태입니다. 우리가 실제로 사용하는 영어나 한글같은 언어는 전혀 모르죠. 내부적으로는 모두 2진법을 사용하여 문자를 표현하는 것 뿐입니다. 오늘은 그러한 컴퓨터의 문자 표현방법을 알아보도록 하겠습니다^-^!! 아스키코드(ASCll)? 사람은 언어를 사용하고 컴퓨터는 숫자를 사용합니다. 컴퓨터가 사람이 사용하는 언어를 사용하기 위해서는 숫자를 언어로 표현해주어야 하는데 이것을 정의한 표준이 아스키코드입니다. 예를들어 '문자 A를 표현할때는 숫자 65를 사용합니다!'라고 아스키 코드에서는 정의하고 있습니다. 아스키코드 문자는 총 128개가 정의되어 있습니다. 컴퓨터는 2진법을 사용하므로 2의 7제곱이면 128이므로 7개의 비트만 있으면 모든 아스키코드를 표현.. 2012. 1. 12.