pow2
밑이 2인 거듭제곱 및 부동소수점 숫자의 스케일링
설명
예제
E
를 지수로 하여 2를 거듭제곱합니다.
E = [1 -2 4 -4 3 9]; Y = pow2(E)
Y = 1×6
2.0000 0.2500 16.0000 0.0625 8.0000 512.0000
이 예제에서는 2의 거듭제곱으로 가수를 스케일링한 표준 IEEE® 연산방식의 결과와 pow2
의 결과를 비교합니다.
문자형 벡터로 구성된 셀형 배열을 만들어 여러 가수에 대한 정확한 값을 표시합니다. 지수를 지정합니다.
Xcell = {'1/2','pi/4','-3/4','1/2','1-eps/2','1/2'}'; E = [1 2 2 -51 1024 -1021]';
2
의 E
거듭제곱으로 Xcell
을 스케일링한 표준 IEEE 연산방식의 결과를 Ycell
로 지정합니다. 이 결과를 테이블로 나타냅니다.
Ycell = {'1','pi','-3','eps','realmax','realmin'}'; table(Xcell,E,Ycell,'VariableNames',["Significand" "Exponent" "Value"])
ans=6×3 table
Significand Exponent Value
___________ ________ ___________
{'1/2' } 1 {'1' }
{'pi/4' } 2 {'pi' }
{'-3/4' } 2 {'-3' }
{'1/2' } -51 {'eps' }
{'1-eps/2'} 1024 {'realmax'}
{'1/2' } -1021 {'realmin'}
그 다음 테이블의 결과를 pow2
와 비교합니다.
Xcell
을 부동소수점 숫자 X
로 변환합니다. pow2(X,E)
를 사용하여 2
의 E
거듭제곱으로 X
를 스케일링합니다.
X = str2num(char(Xcell)); Y = pow2(X,E)
Y = 6×1
10308 ×
0.0000
0.0000
-0.0000
0.0000
1.7977
0.0000
Ycell
을 부동소수점 숫자 Ynum
으로 변환합니다. isequal
로 Y
와 Ynum
을 비교하여 pow2
가 표준 IEEE 산술 연산을 따른다는 것을 보여줍니다.
Ynum = str2num(char(Ycell))
Ynum = 6×1
10308 ×
0.0000
0.0000
-0.0000
0.0000
1.7977
0.0000
isequal(Y,Ynum)
ans = logical
1
입력 인수
지수 값으로, 스칼라, 벡터, 행렬, 다차원 배열, 테이블 또는 타임테이블로 지정됩니다.
데이터형: single
| double
| table
| timetable
가수 값으로, E
와 동일한 크기의 스칼라, 벡터, 행렬, 다차원 배열로 지정됩니다.
데이터형: single
| double
| table
| timetable
팁
Y = pow2(X,E)
구문은 ANSI® C 함수 ldexp()
와 IEEE® 부동소수점 표준 함수 scalbn()
에 대응합니다. 결과 Y
는 단순히 X
의 부동 소수점 지수에 E
를 더하여 빠르게 계산됩니다.
확장 기능
pow2
함수는 tall형 배열을 완전히 지원합니다. 자세한 내용은 tall형 배열 항목을 참조하십시오.
이 함수는 스레드 기반 환경을 완전히 지원합니다. 자세한 내용은 스레드 기반 환경에서 MATLAB 함수 실행하기 항목을 참조하십시오.
pow2
함수는 GPU 배열을 완전히 지원합니다. GPU에서 이 함수를 실행하려면 입력 데이터를 gpuArray
(Parallel Computing Toolbox)로 지정하십시오. 자세한 내용은 GPU에서 MATLAB 함수 실행하기 (Parallel Computing Toolbox) 항목을 참조하십시오.
이 함수는 분산 배열을 완전히 지원합니다. 자세한 내용은 분산 배열을 사용하여 MATLAB 함수 실행 (Parallel Computing Toolbox) 항목을 참조하십시오.
버전 내역
R2006a 이전에 개발됨2-입력값 구문을 사용할 때 복소수 입력값을 지정하면 pow2
함수가 경고를 발생시킵니다. 이 구문에서 복소수 입력값에 대한 지원이 향후 릴리스에서 제거될 예정입니다. 이전 릴리스에서 2-입력값 구문을 사용하면 복소수 입력값의 허수부가 무시되고 실수부만 처리되었습니다.
이전 릴리스의 동작을 그대로 유지하려면 다음 표에 나와 있는 대로 real
함수를 사용하여 복소수 입력값의 실수부를 추출하십시오.
권장되지 않음(경고) | 권장됨 |
---|---|
X = 2 + 1i; E = 2i; Y = pow2(X,E); | X = 2 + 1i; E = 2i; Y = pow2(real(X),real(E)); |
pow2
함수는 테이블이나 타임테이블 내의 변수에 액세스하기 위한 인덱싱 없이 이러한 모든 변수에 대해 계산을 수행할 수 있습니다. 모든 변수는 계산을 지원하는 데이터형을 가져야 합니다. 자세한 내용은 테이블 및 타임테이블에 대해 직접 계산 항목을 참조하십시오.
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)