ALLOT — 데이터 공간 예약/해제

ALLOT — 데이터 공간 예약/해제

ALLOT는 정해진 수만큼의 주소 단위(address unit)의 데이터 공간을 예약하거나 해제하는 코어 단어예요.

출처: ALLOT — Forth 2012 Standard

본문

스택 효과

( n -- )

설명

n이 0보다 크면 n 주소 단위의 데이터 공간을 예약해요. n이 0보다 작으면 |n| 주소 단위의 데이터 공간을 해제해요. n이 0이면 데이터 공간 포인터를 그대로 두어요. ALLOT가 실행을 시작할 때 데이터 공간 포인터가 정렬되어 있고 n이 셀 크기의 배수이면, ALLOT가 실행을 마칠 때에도 정렬된 상태로 유지돼요. ALLOT가 실행을 시작할 때 데이터 공간 포인터가 문자 정렬(character aligned)되어 있고 n이 문자 크기의 배수이면, ALLOT가 실행을 마칠 때에도 문자 정렬된 상태로 유지돼요.

참조 (See)

  • 3.3.3 Data space(데이터 공간)

테스트 (Testing)

T{ 1STA 2NDA U< -> <TRUE> }T
\ HERE MUST GROW WITH ALLOT
T{      1STA 1+ ->   2NDA }T
\ ... BY ONE ADDRESS UNIT
( MISSING TEST: NEGATIVE ALLOT )

더 알아보기 (Learn more)

출처: ALLOT — Forth 2012 Standard