이 번역 페이지는 최신 내용을 담고 있지 않습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
mpy
fimath
객체를 사용하여 두 객체 곱하기
구문
c = mpy(F,a,b)
설명
c = mpy(F,a,b)
는 fimath
객체 F
를 사용하여 a
와 b
간에 요소별 곱셈 연산을 수행합니다. 이는 a
와 b
의 fimath
객체를 재정의하려는 경우 또는 a
와 b
에 연결된 fimath
속성이 서로 다른 경우에 유용합니다. 출력 fi
객체 c
에는 로컬 fimath가 없습니다.
a
와 b
는 둘 중 하나가 스칼라가 아니라면 모두 동일한 차원의 fi
객체일 수 있습니다. a
또는 b
가 스칼라이면 c
는 비 스칼라 객체의 차원을 가져야 합니다. a
와 b
는 double형, single형 또는 정수가 될 수도 있습니다.
예제
이 예제에서 c
는 a
와 b
의 곱으로 40비트 워드 길이와 30비트 소수부 길이를 가집니다.
a = fi(pi); b = fi(exp(1)); F = fimath('ProductMode','SpecifyPrecision',... 'ProductWordLength',40,'ProductFractionLength',30); c = F.mpy(a, b)
c = 8.5397 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 40 FractionLength: 30
알고리즘
c = mpy(F,a,b)
는 다음과 유사합니다.
a.fimath = F; b.fimath = F; c = a .* b
c = 8.5397 DataTypeMode: Fixed-point: binary point scaling Signedness: Signed WordLength: 40 FractionLength: 30 RoundingMethod: Nearest OverflowAction: Saturate ProductMode: SpecifyPrecision ProductWordLength: 40 ProductFractionLength: 30 SumMode: FullPrecision
하지만 동일하지는 않습니다. mpy
를 사용할 때는 a
와 b
의 fimath
속성이 수정되지 않으며, 출력 fi
객체 c
에는 로컬 fimath가 없습니다. 구문 c = a .* b
를 사용할 때는 a
와 b
에 각각 fimath
객체가 있으며 fi
객체 c
에는 입력 a
, b
와 동일한 fimath
객체가 할당됩니다. 자세한 내용은 Fixed-Point Designer™ 사용자 안내서의 fimath Rules for Fixed-Point Arithmetic 항목을 참조하십시오.
확장 기능
버전 내역
R2006a 이전에 개발됨