안녕하세요. 언제나 휴일, 언휴예요.
프로그래밍은 컴퓨터로 하여금 특정 작업을 수행하게 하는 일련의 작업이예요. 이를 위해 작업을 수행하는 과정에서 데이터를 관리하기 위한 문법과 컴퓨터가 수행해야 할 작업을 위한 문법을 요구하죠. 앞에서 다루었던 변수와 형식은 데이터를 관리하기 위한 문법이죠. 이번에는 컴퓨터가 수행해야 할 문법 중에 가장 기초적인 연산자 문법을 다룰 거예요.
Go언어의 연산자에는 산술 계산에 필요한 부호 연산과 사칙연산, 나머지 연산, 증감 연산을 비롯하여 크기를 비교하는 연산, 논리 연산과 비트 연산과 쉬프트 연산, 특정 인덱스의 요소를 의미하는 인덱스 연산, 메모리 주소를 구하는 레퍼런스(참조) 연산 및 메모리 주소에 있는 값을 가져오거나 설정하는 역참조 연산과 채널 수신 연산 및 대입 연산이 있어요.
이러한 연산들은 프로그래밍 언어를 사용하기 위해 필수적으로 사용합니다. 다른 문법들을 사용하는 방법을 다루기 전에 기초적인 연산을 먼저 다루고 넘어가려고 해요. 하지만 모든 연산을 앞에서 다루는 것은 효과적이지 못합니다. 인덱스 연산은 슬라이스나 배열을 사용하기 위한 연산이며 참조 연산과 역참조 연산은 포인터 개념을 알아야 하고 채널 수신 연산은 채널을 알아야 하는데 이에 관한 사항은 여기에서 다루는 것은 효율이 떨어질 것이라 생각합니다.
다른 문법을 다루기 전에 비교적 이해하기 쉽거나 알고 넘어가야 할 것이라 생각하는 기초적인 연산들을 먼저 다루고 넘어가려고 해요.
여기에서는 부호 연산, 사칙 연산과 나머지 연산, 증감 연산, 비교 연산, 논리 연산, 비트 연산, 쉬프트 연산, 대입 연산 순으로 다룰 거예요.