BCD 사칙연산(나눗셈) : BDIV, BDIVP, DBDIV, DBDIVP
명령 | 사용 가능 영역 | 스텝수 | 플래그 | |||||||||||||||
M | X | Y | K | L | F | T | C | S | Z | D | @D | 정수 | 에러 | 제로 | 캐리 | |||
BDIV(P) DBDIV(P) | S1 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | ㅇ | 4 | ㅇ | - | - |
S2 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | ㅇ | |||||
D | ㅇ | - | ㅇ | ㅇ | ㅇ | - | ㅇ | ㅇ | - | ㅇ | ㅇ | ㅇ | - |
S1, S2 | 지정된 데이터 또는 영역의 번호 |
D | Destination 영역의 번호 |
에러(F110) | 영역이 @D로 간접 지정된 경우 영역 초과가 발생하면 SET 0으로 나누는 경우 (S2의 값이 0인 경우) |
BDIV |
---|
S1으로 지정된 BCD 데이터와 S2로 지정된 BCD 데이터를 나눗셈하여 그 결과의 몫은 D로 지정된 영역에, 나머지값는 D+1로 지정되는 영역에 저장합니다.
연산결과에 따라 에러(F110)를 SET 시킵니다.
프로그램
입력신호 X0002이 ON 되었을 때 D0000의 BCD 데이터를 D0001의 BCD 데이터로 나눗셈하여 Y0020에 몫, Y0030에 나머지를 저장하는 프로그램