[21] PLC 기초 강좌
4.4. 응용 명령
4.4.2. 로테이션 명령
1) 16비트 데이터의 오른쪽 로테이션(ROR(P), RCR(P)) ★
▶ [ROR(P) (D) n]
(D)로 지정된 디바이스의 16비트 데이터를 캐리 플래그(SM700)를 포함하지 않고, n비트 오른쪽으로 회전 시킵니다.
캐리 플래그는 ROR 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터 만큼 회전을 실행합니다.
이 때 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=16(자리 지정로 지정된 비트 수)=12비트인 경우 16÷12=1, 나머지가 4이므로, 4비트만큼 회전합니다.
▶ [RCR(P) (D) n]
(D)로 지정된 디바이스의 16비트 데이터를 캐리 플래그를 포함하여, n비트 오른쪽으로 회전시킵니다.
캐리 플래그는 RCR 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전합니다.
이 때, 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=16, (자리 지정으로 지정된 비트 수)=12비트인 경우는 16÷12=1, 나머지가 4이므로, 4비트만큼 회전합니다.
※ TIP !!!
바이트 단위의 통신 수신부 데이터를 결합 및 조작하는 프로그램에서 자주 사용합니다.
2) 16비트 데이터의 왼쪽 로테이션(ROL(P), RCL(P)) ★
▶ [ROL(P) (D) n]
(D)로 지정된 디바이스의 16비트 데이터를 캐리 플래그(SM700)를 포함하지 않고, n비트 왼쪽으로
회전시킵니다. 캐리 플래그는 ROL 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전을 실행합니다.
이 때 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=16(자리 지정로 지정된 비트 수)=12비트인 경우는 16÷12=1, 나머지가 4이므로, 4비트만큼 회전합니다.
▶ [RCL(P) (D) n]
(D)로 지정된 디바이스의 16비트 데이터를 캐리 플래그를 포함하여, n비트 왼쪽으로 회전시킵니다.
캐리 플래그는 RCL 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전합니다.
이 때, 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=16, (자리 지정으로 지정된 비트 수)=12비트인 경우는 16÷12=1, 나머지가 4이므로, 4비트만큼 회전합니다.
※ TIP !!!
바이트 단위의 통신 수신부 데이터를 결합 및 조작하는 프로그램에서 자주 사용합니다.
3) 32비트 데이터의 오른쪽 로테이션(DROR(P), DRCR(P))
▶ [DROR(P) (D) n]
(D)로 지정된 디바이스의 32비트 데이터를 캐리 플래그(SM700)를 포함하지 않고, n비트 오른쪽으로
회전시킵니다. 캐리 플래그는 DROR 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전을 실행합니다.
이 때 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=31(자리 지정으로 지정된 비트 수)=24비트인 경우는 31÷24=1, 나머지가 7이므로, 7비트만큼 회전합니다.
▶ [DRCR(P) (D) n]
(D)로 지정된 디바이스의 32비트 데이터를 캐리 플래그를 포함하여, n비트 오른쪽으로 회전시킵니다.
캐리 플래그는 DRCR 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전합니다.
이 때, 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=31(자리 지정으로 지정된 비트 수)=24비트인 경우는 31÷24=1, 나머지가 7이므로, 7비트만큼 회전합니다.
4) 32비트 데이터의 왼쪽 로테이션(DROL(P), DRCL(P))
▶ [DROL(P) (D) n]
(D)로 지정된 디바이스의 32비트 데이터를 캐리 플래그(SM700)를 포함하지 않고, n비트 왼쪽으로
회전시킵니다. 캐리 플래그는 DROL 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전을 실행합니다.
이 때 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=31(자리 지정으로 지정된 비트 수)=24비트인 경우는 31÷24=1, 나머지가 7이므로, 7비트만큼 회전합니다.
▶ [DRCL(P) (D) n]
(D)로 지정된 디바이스의 32비트 데이터를 캐리 플래그를 포함하여, n비트 왼쪽으로 회전시킵니다.
캐리 플래그는 DRCL 실행전의 상태에 따라 ON/OFF 됩니다.
(D)에 비트 디바이스를 지정한 경우는 지정 자리수의 데이터만큼 회전합니다.
이 때, 실제로 회전하는 비트 수는 n/(자리 지정으로 지정된 비트 수)의 나머지가 됩니다.
예를 들면, n=31(자리 지정으로 지정된 비트 수)=24비트인 경우는 31÷24=1, 나머지가 7이므로, 7비트만큼 회전합니다.
프로그램 예제
'MELSEC PLC 기초 강좌' 카테고리의 다른 글
[23] PLC 기초 강좌 (0) | 2019.03.09 |
---|---|
[22] PLC 기초 강좌 (0) | 2019.03.04 |
[20] PLC 기초 강좌 (0) | 2019.02.20 |
[19] PLC 기초 강좌 (0) | 2019.02.14 |
[18] PLC 기초 강좌 (0) | 2019.02.10 |
댓글