2016-08-17 1 views

답변

2

이 당신이 원하는 것을 단일 명령이 없지만, 산뜻한 솔루션은 아마 당신이 다음을 수행 할 수 있도록 임시 레지스터에 관련 16 비트 피연산자를 추출 즉 sxthmla의 조합이 될 것입니다 일반 32x32 곱하기 및 하단 32 비트 누적.

+0

가능한 해결 방법 중 하나이지만 전체 작업을 수행하는 데 필요한 지침 수가 늘어납니다. 'MLA' 명령을 사용하는 대신 다른 방법이 있습니까? –

+0

팩형 하프 워드 피연산자로부터 32x16 곱셈을 구현하고 _lower_32 비트를 누적하는 명령어가 없으므로 no. 곱셈 결과의 최하위 부분을 반환하는 유일한 연산은'mul'과'mla'이며, 32x32 연산입니다. 그러나 알고리즘에 _else_가있는 경우 다른 이유로 16 비트 데이터의 압축을 풀어야하는 경우에도 물건의 순서를 변경하여 곱셈에 활용할 가치가 있습니다. – Notlikethat

관련 문제