ALLOT — 데이터 공간 예약/해제
ALLOT — 데이터 공간 예약/해제
ALLOT는 정해진 수만큼의 주소 단위(address unit)의 데이터 공간을 예약하거나 해제하는 코어 단어예요.
본문
스택 효과
( 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 )