2015-01-29 1 views
5

우리는 파스칼의 변형을 사용하는 클래스 할당을 위해 Fenuc Karel 로봇을 사용하고 있지만, 우리 로봇은 random()을 추가하기 전에 1991-1993에 있습니다. 누구든지 파스칼의 오래된 dos 구현에 임의의 숫자를 얻는 방법을 알고 있습니까? 변수 이름은 8자를 넘을 수 없으며 숫자는 255를 넘을 수 없습니다.1991 년 무작위 숫자 Pascal

+0

도스를하는 것이 랜덤하지 않는 이유가 아닙니다. 더 나은 답변을 원한다면 정확한 구현을 말하십시오. 많은 사람들이 비표준 verrsions을 갖게됩니다. 총체적인 비상 사태시에는 Mersenne Twister 구현 인 Free Pascal을 사용할 수 있습니다. –

+0

나는 이미 파스칼의 버전을 공개했다. 내가 얻을 수있는 것은 가까운 곳에서 파생 된 파스칼의 변형 인 1991-1993 KAREL이다. 그것은 미리 정의 된 루틴으로 무작위가 없습니다. – HDeffo

답변

1

borland pascal 버전 인 경우 asm { … } 블록을 사용하면 값을 얻을 수 있습니다. RTC는 많은 의도와 목적에 대해 충분히 무작위입니다. 주어진 임의의 변수 :

asm { 
    xor ax, ax; 
    int 1ah; 
    mv random, al; 
} 

이것은 실시간 시계 값의 마지막 8 비트를 제공합니다.

그런 것 외에도 오래된 기계에서 의사 난수 생성을 찾을 수 있습니다. C64; 코드를 파스칼로 이식해야합니다.

업데이트 : Fanuc Karel (나는 희망한다)은 GET_TIME 루틴을 가지고 있지만 반환되는 내용에 대해서는 확신 할 수 없습니다.

+0

FENUC KAREL 및 파스칼 함수의 변형은 지원되지 않으며 대신 루틴을 사용합니다. 사전 정의 된 루틴은 거의없고 현재 시계를 가져올 수있는 루틴을 인식하지 못합니다. 당신이 FENUC KAREL에서 시계를 얻는 루틴을 알고 있다면 이것은 완벽한 방법이 될 것입니다. – HDeffo