BCD형 COS 연산 : BCOS, BCOSP
명령 | 사용 가능 영역 | 스텝수 | 플래그 | 사용가능CPU | |||||||||||||||||
M | X | Y | K | L | F | T | C | S | Z | D | @ D | 정수 | 에 러 | 제 로 | 캐 리 | XP | CP | BP | |||
BCOS BCOSP | S | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | ㅇ | 3 | ㅇ | - | - | ㅇ | - | - |
D | ㅇ | - | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | ㅇ |
S | COS 연산을 할 데이터 또는 디바이스 번지 |
D | 연산 결과를 저장할 디바이스 번지 |
에러(F110) | S로 지정된 데이터가 BCD 데이터가 아닐 때 S로 지정된 데이터가 0~360의 범위가 아닐 때 |
BCOS(P)
S로 지정된 값(DEG 단위)의 cos값을 연산하여 D , D+1 , D+2 영역에 연산 결과를 저장합니다.
S로 지정된 값은 0~360 (DEG 단위)를 BCD 값으로 설정합니다.
D영역에는 결과 값이 양수이면 0 , 음수이면 1을 저장합니다.
D+1 , D+2의 값은 BCD 데이터로 -1.0000 ~ 1.0000범위의 값을 가집니다.
연산 결과는 소수 5번째 자리를 반올림한 값입니다.
프로그램 예
각도 320을 D00080에 저장합니다..
D00080의 데이터를 BCD데이터로 변환하여 D00090에 저장합니다.
D00090의 BCD데이터의 cos값을 D00100 , D00101 , D00102에 저장합니다.
실행결과 값이 0일 경우 입력값에 따라 부호(D)의 값이 0 또는 1 일 수 있습니다.
이는 PI(3.14.....)의 값이 무한소수이지만, CPU 에서는 유한한 값으로 계산하기 때문입니다.