개발 비트 시프 팅이란 무엇입니까? -techopedia에서 정의

비트 시프 팅이란 무엇입니까? -techopedia에서 정의

차례:

Anonim

정의-비트 이동이란 무엇입니까?

비트 시프 팅은 이진 값의 모든 비트에 대해 수행되는 작업으로, 왼쪽 또는 오른쪽으로 결정된 수만큼 이동합니다. 비트 쉬프팅은 피연산자가 전체가 아닌 일련의 비트로 사용될 때 사용됩니다. 즉, 피연산자는 값이 아닌 무언가를 나타내는 개별 비트로 취급됩니다.

비트 시프 팅은 프로그래밍에 자주 사용되며 각 프로그래밍 언어마다 하나 이상의 변형이 있습니다.

비트 시프 팅은 비트 단위 연산이라고도합니다.

Techopedia는 비트 이동을 설명합니다

비트 시프 팅에는 두 가지 변형 (오른쪽 시프트 및 왼쪽 시프트)이 있으며, 시프트가 발생해야하는 위치 수에 의해 더 정의됩니다. 예를 들어, 피연산자 하나의 값을 왼쪽으로 이동하거나 비트 "n"값을 오른쪽으로 이동합니다.

논리 및 산술의 두 가지 종류의 비트 이동도 있습니다. 논리 비트 시프 팅은 부호없는 정수에 2의 거듭 제곱을 곱하거나 나누는 데 유용 할 수 있습니다. 예를 들어, "0001"또는 "1"값이 왼쪽으로 이동하면 "0010"또는 "2"가되고 다시 왼쪽으로 이동하면 "0100"또는 "4"가됩니다. 오른쪽으로 이동하면 값을 시프트 당 2로 나누는 반대 효과가 있습니다. 대부분의 경우 이동은 원형으로 처리되므로 왼쪽으로 이동하면 가장 왼쪽 값이 가장 오른쪽 값이되고 그 반대도 마찬가지입니다.

논리 왼쪽 시프트와 산술 왼쪽 시프트는 동일한 효과를 가지므로 Java에는 단일 왼쪽 시프트 연산자 (<<) 만 있습니다. 산술 오른쪽 시프트는 (>>)이고 논리는 (>>>)입니다. C 및 C ++에는 시프트 오른쪽 연산자 (>>)가 하나만 있습니다. 수행 될 시프트의 종류는 시프트되는 정수의 유형에 의해 결정된다. 부호있는 정수는 산술을 사용하여 시프트되는 반면 논리 비트 시프트는 부호없는 정수에 사용됩니다. 마이크로 컨트롤러 및 마이크로 프로세서는 일반적으로 개별 비트로 표시되는 플래그에 의존하기 때문에 비트 시프 팅은 어셈블리 프로그래밍에도 많이 사용됩니다. 기본적으로 이진수 시스템은 어셈블리 언어로 프로그래밍 할 때 비트 시프 팅이 일반적으로 사용되는 연산자로 사용되기 때문입니다.

비트 시프 팅이란 무엇입니까? -techopedia에서 정의