성능을 최적화하기 위해 LabVIEW는 때때로 특정 배열 함수에 연결한 배열에서 배열 슬라이스를 생성합니다. 배열 슬라이스는 한 배열에서 생성한 또다른 배열이며, 이 배열에는 원래 배열의 원소 일부가 포함되어 있습니다. 생성된 배열의 와이어 위로 커서를 이동할 때 나타나는 기본 도움말 윈도우에서 LabVIEW는 배열 슬라이스를 (부분)배열로 나타냅니다. 예를 들어, (1-D (부분)배열의)는 함수가 배열 슬라이스를 생성함을 뜻하고, (1-D 배열의)는 생성된 배열이 모든 원소를 포함함을 뜻합니다.

노트 컨텍스트 도움말 창은 VI 속성 대화 상자의 실행 페이지에서 VI에 대한 디버깅을 허용하는 경우에만 배열과 배열 슬라이스를 구분합니다.

LabVIEW가 배열 슬라이스를 생성하는 경우, 생성된 배열 슬라이스는 데이터를 인접하게 저장하는 연속 배열 슬라이스이거나 데이터를 인접하지 않게 저장하는 비연속 배열 슬라이스일 수 있습니다. 배열 슬라이스를 이진 파일에서 미리 할당된 읽기 함수에 연결하는 경우, 이 함수는 사용하는 배열에 따라 다른 수준의 지원을 제공하므로 배열 슬라이스가 연속적인지 비연속적인지 알아야 할 수 있습니다.

LabVIEW가 생성하는 배열 슬라이스가 연속인지 비연속인지 알아내기

LabVIEW의배열 함수는 행-주요 순서로데이터에 액세스합니다. 배열의 원소를 행 우선 순위로 정렬하는 경우, LabVIEW는 메모리에서 이 배열을 연속적으로 나타냅니다. LabVIEW는 메모리에 다음 2D 배열을 0에서 15까지의 1D 라인으로 연속적으로 나타냅니다:

위의 배열을 [배열 인덱스] 함수에 연결하고 인덱스(행) 입력을 0으로 설정하는 경우, LabVIEW는 배열 또는 연속 배열 슬라이스를 반환합니다. LabVIEW는 이 값을 연속적인 메모리 오프셋 0, 1, 2, 3에서 나타내기 때문에 배열 슬라이스는 연속 슬라이스입니다.

위의 배열을 [배열 인덱스] 함수에 연결하고 인덱스(열) 입력을 0으로 설정하는 경우, LabVIEW는 배열 또는 비연속 배열 슬라이스를 반환합니다. LabVIEW는 이 값을 비연속적인 메모리 오프셋 0, 4, 8, 12에서 나타내기 때문에 배열 슬라이스는 비연속 슬라이스입니다.

다음 함수는 배열 슬라이스를 반환할 수 있습니다. 다음 함수가 배열 슬라이스를 반환하는 경우, 다음 가이드라인을 따라 LabVIEW가 연속 배열 슬라이스를 생성하는지 비연속 배열 슬라이스를 생성하는지 알 수 있습니다:

  • [배열 부분 대체]―LabVIEW가 이 함수의 출력을 메모리에 연속적으로 나타내는 경우, 연속 배열 슬라이스를 생성합니다.
  • [1D 배열 뒤집기]―배열을 이 함수에 연결하는 경우, 비연속 배열 슬라이스를 생성합니다. 이미 뒤집힌 배열 슬라이스를 이 함수에 연결하는 경우, 연속 배열 슬라이스를 생성합니다.
  • [1D 배열 분리]―배열을 이 함수에 연결하는 경우, 연속 배열 슬라이스를 생성합니다. 비연속 배열 슬라이스를 이 함수에 연결하는 경우, 생성된 배열 슬라이스는 LabVIEW가 이 배열 슬라이스를 메모리에 어떻게 나타내는지에 따라 연속이 될 수도, 비연속이 될 수도 있습니다.
  • [2D 배열 전치]―이 함수는 이미 전치된 배열을 연결하지 않는 한, 비연속 배열 슬라이스를 생성합니다.
  • [클러스터를 배열로]―이 함수는 연속 배열 슬라이스를 생성합니다.
  • [배열 인덱스]―이 함수는 배열을 열 방향으로 인덱스하도록 지정하지 않는 한, 연속 배열을 생성합니다.
  • [1D 배열 데시메이트]―이 함수는 비연속 배열 슬라이스를 생성합니다.