16Bit and 32Bit Unsigned Data Comparison : UCMP, UDCMP
명령 | 사용 가능 영역 | 스텝수 | 플래그 | |||||||||||||||
M | X | Y | K | L | F | T | C | S | Z | D | @D | 정수 | 에러 | 제로 | 캐리 | |||
UCMP UDCMP | S1 | ㅇ | ㅇ | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | ㅇ | 3 | ㅇ | - | - |
S2 | ㅇ | - | ㅇ | ㅇ | ㅇ | - | - | - | - | ㅇ | ㅇ | ㅇ | ㅇ |
S1 | 비교될 데이터 또는 데이터 저장 번지 |
S2 | 비교될 데이터 또는 데이터 저장 번지 |
에러(F110) | 영역이 @D로 지정된 경우 영역 초과가 발생하면 SET |
UCMP
기능
S1으로 지정된 Unsigned 워드 데이터와 S2로 지정된 Unsigned 워드 데이터를 비교하여 그 결과를 Flag(F120~F125)에 표시합니다.
조건 | 결과 Flag 저장 위치 |
S1 < S2 | F120 |
S1 ≤ S2 | F121 |
S1 = S2 | F122 |
S1 > S2 | F123 |
S1 ≥ S2 | F124 |
S1 ≠ S2 | F125 |
연산결과에 따라 에러플래그를 SET 시킵니다.
프로그램
M0000가 ON 되었을 때 D0100의 Unsigned 워드 데이터와 D0090의 Unsigned 워드 데이터를비교하여 D0100의 데이터가 D0090의 데이터보다 작으면 Y0010에 출력하는 프로그램
UDCMP
기능
S1, S+1로 지정된 Unsigned 더블 워드 데이터와 S2로 지정된 Unsigned 더블 워드 데이터를 비교하여 그 결과를 Flag(F120~F125)에 표시합니다.
조건 | 결과 Flag 저장 위치 |
S1 < S2 | F120 |
S1 ≤ S2 | F121 |
S1 = S2 | F122 |
S1 > S2 | F123 |
S1 ≥ S2 | F124 |
S1 ≠ S2 | F125 |
연산결과에 따라 에러플래그를 SET 시킵니다.
프로그램
M0000가 ON 되었을 때 D0100, D0101의 Unsigned 더블 워드 데이터와 D0090, D0091의 Unsigned 더블 워드 데이터를 비교하여 D0100, D0101의 데이터가 D0090, D0091의 데이터보다 크면 Y0011에 출력하는 프로그램