상품

연산 명령 등에서 제1 또는 제2 피연산자와 제3 피연산자에 동일한 데이터 메모리를 사용해도 됩니까?

등록일
2025. 12. 17.

연산 명령 등에서 제1 또는 제2 피연산자와 제3 피연산자에 동일한 데이터 메모리를 사용해도 됩니까?



그림 1과 같이, 가산 명령/0.00의 상승을 포착하여 1스캔만으로 연산 처리가 완결되는 미분형 프로그램에서는 제1(또는 제2) 피연산자와 제3 피연산자가 동일한 DM이어도 특별히 문제될 것은 없습니다. 다만, 연산 처리 실행 후 D100에 저장되어 있던 피가수 데이터가 삭제되어 버리므로, 디버깅이나 소프트웨어 유지보수의 용이성을 고려하면 제3 피연산자에는 다른 DM을 사용하시기를 권장합니다.

  


■그림 1 설명
D100에는 처음에 123(BCD)이라는 수치가 저장되어 있었으나, 가산 명령 신호/0.00-ON의 상승 시점에 1스캔 동안 아래의 가산 처리가 실행된 결과, D100의 내용이 123에서 246으로 변화했음을 나타냅니다.
     
    
(참고) 그림 1을 매 사이클 실행형으로 설정하고, 가산 명령(0.00)이 ON 상태인 동안 A+B=C를 실시간으로 처리하고자 할 경우, C의 DM 주소는 A, B와 반드시 다른 주소로 설정해야 합니다. 동일한 주소를 사용하면 결과 데이터가 스캔 횟수만큼 순환 처리되어 제3오퍼랜드에 예상치 못한 값이 저장될 수 있습니다.