버그 몇가지 고침.
고친 버그 목록
1. cpu 램 출력부분이 연결이 안돼서 9번지 이상 램이 출력이 안됨
2. 컴파일러에서 대입연산자 왼쪽에 포인터 쓴 연산 이상하게 되던거 고침
수정사항
1. 명령어 리셋기능 (맨위쪽 z 보내는 조합기) 넣음. 이거 껐다키고 램 클리너 꺾다키면 완벽히 새 상태 됨.
<영상>
https://youtu.be/tZs3zUbigPM<블프>
https://factorioprints.com/view/-MYQvGve69eSZxF72bPb
<컴파일러>
https://blog.naver.com/mkkim0612/222308881455
지금까지 구한 모든 소수로 나눈 나머지 구하게 설정했는데 판별하려는 수의 제곱근까지만 연산하면 더 빨라질즛
지금까지 구한 소수로 나누는 알고리즘 괜찮네 나는 저번에 만들때 6n플마 1로 나눠보게 설정했는데 어떤식으로 구현함?
그리고 너가 만든 씨퓨 대충 이해해서 써먹을수 있기는 한데 내가 코딩을 잘 몰라서 그냥 쌩으로 만드는거랑 들어가는 노력은 별차이 없더라 ㅋㅋ
이 댓글은 게시물 작성자가 삭제하였습니다.
이 댓글은 게시물 작성자가 삭제하였습니다.
[1] : 현재까지 저장된 마지막 소수의 인덱스 (초기값11) [2] : 검사하고 있는 수 (초기값 3) [3] : 검사하고 있는 수를 나눠 나머지를 구할 수의 인덱스 (초기값 11) [11] : 여기서부터 소수가 저장됨 (초기값 2) [2] 를 [[3]]으로 나눠 나머지를 구하고 0이면 나누어 떨어지는거니 [2]를 1 증가시키고 [3]을 11로 만들어 반복 0이 아니면 [3]을 1 증가시키고 다시 나머지를 구하기 반복 [3]을 계속 1씩 증가시키다가 [1]보다 커지면 지금까지 구한 모든 소수에 대해서 계산이 완료된 것 그러면 [2]가 소수가 맞는게 증명되니까 [2] 출력하고 [[3]] = [2] 로 소수 저장하고
[1] = [1] + 1 로 저장된 소수 수를 1 더하고 [2] = [2] + 1 과 [3] = 11 로 다음 수 연산 시작
아니 야 그건 그냥 소수로만 나눠보는게 아니라 그낭 n보다 작은 자연수는 싹다 해보는거 아님? 그리고 [2] 3부터 시작할거면 2씩늘리지 왜 1씩늘림
지금 잘 이해가 안되는데... 초기값 11이라는게 실수 11이라는거야 [11]이라는 변수로 지정돠는 값이라는거야?
[3]은 [3]으로 안 쓰이고 [[3]]으로만 쓰이는 걸 볼수있음 [3]의 초기값은 11이기 때문에 [[3]] 은 [11] 과 같고 이건 2임 나중에 [3]에 1이 더해지면 [[3]] 은 [12] 와 같고 [12] 에는 3이 들어가있을 것임 [13]애는 5가 들어갈 거고 [2]에다가 2씩 더해주면 더 빨라지긴 할듯
이 댓글은 게시물 작성자가 삭제하였습니다.
[3]하고 [1]이 포인터 변수임
변수지정 몇개까지 된다고 했지? 계속 돌리면 몇번쨰 소수까지 갈수 있는거?
저기선 만들어논게 384갠데 11부터 시작이니 374개 구할 수 있음 근데 램을 계속 이어붙일 수 있고, 마이너스 인덱스도 돼서 이론상 2^32 - 10 - 1개까지 (0번은 램 못만듬)
그래서 인덱스 값보다 소수가 먼저 커져서 램이 다 달기 전에 오버플로우 먼저됨
아 아니다 374번째 소수가 2551인데 2551 이후로도 계속 구해지다가 (근데 저장이 안됨) 2551의 제곱부터 오류남
근데 다시 보니까 코드에 89번쨰 소수까지 구하고 종료하게 해놨네
정신나갔네 ㄹㅇ
소수를 유클리드 호제법으로 구하게 하는건 힘든가? 그게 젤 효율이 좋은데 말이지 - dc App
지금까지 나온 소수를 전부 곱한 수랑 검사하는 수의 최대공약수가 1이면 소수로 판별하는건가? 어떻게 하는거지
GCD(a,b) = a % b == 0 ? b : GCD(b,a%b) - dc App
아 최대공약수랑 착각했네 소수 구하는건 나누는거 밖에 없는듯 ㅈㅅ ㅎㅎ - dc App
예전에 팩토리오로 FPU 구현하다 때려쳤는데, FPU 구현해서 레스터라이즈 렌더링에 도전해보는 건 어때? 아무도 구현 못해봤을 건데
https://youtu.be/CU-oku9cK_M
이건
레스터라이징으로 쳐줌?
진짜 미친놈들 많네ㅋㅋ 근데 그래픽스 몰라서 못만들듯
1년 뒤에 대학 가면 해야겠다
오 예전에 만들려던 게 정확히 저거였는데 래스터라이즈 처리하는데 실수 연산이 반드시 필요해서 FPU 구현하다 포기했거든. 실수 연산만 구현하면 나머지 구현은 쉬운 거라... 영상 보니까 정수에 천을 곱해서 소수점 세 자릿수 단위의 실수처럼 처리하고 있네. 예전에 저것도 고민해봤는데 실수 연산 처리가 힘들어서 하다가 ㅈㅈ쳤는데 얘는 구현을 잘했네
CPU의 꽃은 분기예측인데 분기문과 분기예측기 구현도 재밌겠다
램에서 ALU로 데이터 1틱만에 옮길 수 있어서 캐시랑 레지스터가 없음 그래서 분기예측도 필요없지 않을까 그리고 어차피 그렇게 어려운 건 못할듯ㅋㅋ
아 분기예측이 단순히 램에서 데이터를 예측해서 가져오는 게 아니라 값까지 미리 예상해서 계산하는거구나ㅋㅋㅋ
1년 지나고 오면 8비트 컴퓨터같은거 만들어서 팩맨같은거 구현할듯 ㅋㅋ