Main Content

bitsra

비트를 오른쪽으로 산술 시프트

설명

예제

c=bitsra(a,k)는 고정소수점 연산의 경우 입력값 a에 대해 오른쪽으로 k비트 산술 시프트를 수행한 결과를 반환합니다. 부동소수점 연산의 경우 이 함수는 2-k를 곱합니다.

입력값에 부호가 없으면 bitsra는 오른쪽 시프트한 비트 위치에 0을 시프트합니다. 입력값에 부호가 있으면 bitsra는 오른쪽 시프트한 비트 위치에 최상위 비트(MSB)를 시프트합니다.

bitsraRoundingMode, OverflowAction과 같은 fimath 속성을 무시합니다.

afi 객체이면, ac는 연결된 fimath 객체 및 numerictype 객체가 동일합니다.

예제

모두 축소

값이 –8이고 워드 길이가 4이고 소수부 길이가 0인 부호 있는 고정소수점 fi 객체를 만듭니다. 그런 다음 객체의 이진수 값을 표시합니다.

a = fi(-8,1,4,0);
disp(bin(a))
1000

a를 오른쪽으로 1비트 시프트합니다.

disp(bin(bitsra(a,1)))
1100

bitsra는 오른쪽 시프트한 비트 위치에 MSB를 시프트합니다.

bitsra를 사용하여 int8형 입력값을 오른쪽으로 2비트 시프트합니다.

a = int8(64);
bitsra(a,2)
ans = int8
    16

fi 시프트 값을 사용하여 내장 int8형 입력값을 오른쪽으로 시프트합니다.

k = fi(2);
a = int8(64);
bitsra(a,k)
ans = int8
    16

부동소수점 double형 입력값을 2-3으로 스케일링합니다.

a = double(128);
bitsra(a,3)
ans = 16

입력 인수

모두 축소

시프트할 데이터로, 스칼라, 벡터, 행렬 또는 fi 객체나 내장 숫자형으로 구성된 다차원 배열로 지정됩니다.

데이터형: fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

복소수 지원: 예

시프트할 비트 수로, 음이 아닌 정수 값 스칼라 fi 객체 또는 내장 숫자형으로 지정됩니다.

데이터형: fi |single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

확장 기능

버전 내역

R2007b에 개발됨

참고 항목

| | |