vista에서 quartus의 46
1969 단어 내 cpustack_machinequartus
개요
비스타로 quartus를 시도했어요.
cpu를 써 봤어요.
명령을 확장해 보았습니다.
사진.
간접 주소 지정
샘플 코드 mem[12'h000] = 16'h1055;// push 85
mem[12'h001] = 16'h1008;// push 8
mem[12'h002] = 16'h9000;// st
mem[12'h003] = 16'he000;// out
mem[12'h004] = 16'h1008;// push 8
mem[12'h005] = 16'h8000;// ld
mem[12'h006] = 16'he000;// out
mem[12'h007] = 16'h4007;//bye: jmp bye
mem[12'h008] = 16'h0048;//a: 0x0048
mem[12'h009] = 16'h0049;//b: 0x0049
mem[12'h00a] = 16'h0050;//c: 0x0050
사진.
하위 루틴 호출
샘플 코드 mem[12'h000] = 16'h1030;// push 48
mem[12'h001] = 16'h3010;// set a
mem[12'h002] = 16'h1005;// push 5
mem[12'h003] = 16'h3011;// set b
mem[12'h004] = 16'ha000;// call
mem[12'h005] = 16'h4009;// jmp add
mem[12'h006] = 16'h2012;// get c
mem[12'h007] = 16'he000;// out
mem[12'h008] = 16'h4008;//bye: jmp bye
mem[12'h009] = 16'h1001;//add: push 1
mem[12'h00a] = 16'hf000;// +
mem[12'h00b] = 16'h2010;// get a
mem[12'h00c] = 16'h2011;// get b
mem[12'h00d] = 16'hf000;// +
mem[12'h00e] = 16'h3012;// set c
mem[12'h00f] = 16'hb000;// ret
mem[12'h010] = 16'h0000;//a: 0x0000
mem[12'h011] = 16'h0000;//b: 0x0000
mem[12'h012] = 16'h0000;//c: 0x0000
이상.
Reference
이 문제에 관하여(vista에서 quartus의 46), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ohisama@github/items/61a5945ca35a4bc281ce
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
간접 주소 지정
샘플 코드 mem[12'h000] = 16'h1055;// push 85
mem[12'h001] = 16'h1008;// push 8
mem[12'h002] = 16'h9000;// st
mem[12'h003] = 16'he000;// out
mem[12'h004] = 16'h1008;// push 8
mem[12'h005] = 16'h8000;// ld
mem[12'h006] = 16'he000;// out
mem[12'h007] = 16'h4007;//bye: jmp bye
mem[12'h008] = 16'h0048;//a: 0x0048
mem[12'h009] = 16'h0049;//b: 0x0049
mem[12'h00a] = 16'h0050;//c: 0x0050
사진.
하위 루틴 호출
샘플 코드 mem[12'h000] = 16'h1030;// push 48
mem[12'h001] = 16'h3010;// set a
mem[12'h002] = 16'h1005;// push 5
mem[12'h003] = 16'h3011;// set b
mem[12'h004] = 16'ha000;// call
mem[12'h005] = 16'h4009;// jmp add
mem[12'h006] = 16'h2012;// get c
mem[12'h007] = 16'he000;// out
mem[12'h008] = 16'h4008;//bye: jmp bye
mem[12'h009] = 16'h1001;//add: push 1
mem[12'h00a] = 16'hf000;// +
mem[12'h00b] = 16'h2010;// get a
mem[12'h00c] = 16'h2011;// get b
mem[12'h00d] = 16'hf000;// +
mem[12'h00e] = 16'h3012;// set c
mem[12'h00f] = 16'hb000;// ret
mem[12'h010] = 16'h0000;//a: 0x0000
mem[12'h011] = 16'h0000;//b: 0x0000
mem[12'h012] = 16'h0000;//c: 0x0000
이상.
Reference
이 문제에 관하여(vista에서 quartus의 46), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ohisama@github/items/61a5945ca35a4bc281ce
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mem[12'h000] = 16'h1055;// push 85
mem[12'h001] = 16'h1008;// push 8
mem[12'h002] = 16'h9000;// st
mem[12'h003] = 16'he000;// out
mem[12'h004] = 16'h1008;// push 8
mem[12'h005] = 16'h8000;// ld
mem[12'h006] = 16'he000;// out
mem[12'h007] = 16'h4007;//bye: jmp bye
mem[12'h008] = 16'h0048;//a: 0x0048
mem[12'h009] = 16'h0049;//b: 0x0049
mem[12'h00a] = 16'h0050;//c: 0x0050
하위 루틴 호출
샘플 코드 mem[12'h000] = 16'h1030;// push 48
mem[12'h001] = 16'h3010;// set a
mem[12'h002] = 16'h1005;// push 5
mem[12'h003] = 16'h3011;// set b
mem[12'h004] = 16'ha000;// call
mem[12'h005] = 16'h4009;// jmp add
mem[12'h006] = 16'h2012;// get c
mem[12'h007] = 16'he000;// out
mem[12'h008] = 16'h4008;//bye: jmp bye
mem[12'h009] = 16'h1001;//add: push 1
mem[12'h00a] = 16'hf000;// +
mem[12'h00b] = 16'h2010;// get a
mem[12'h00c] = 16'h2011;// get b
mem[12'h00d] = 16'hf000;// +
mem[12'h00e] = 16'h3012;// set c
mem[12'h00f] = 16'hb000;// ret
mem[12'h010] = 16'h0000;//a: 0x0000
mem[12'h011] = 16'h0000;//b: 0x0000
mem[12'h012] = 16'h0000;//c: 0x0000
이상.
Reference
이 문제에 관하여(vista에서 quartus의 46), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/ohisama@github/items/61a5945ca35a4bc281ce
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
mem[12'h000] = 16'h1030;// push 48
mem[12'h001] = 16'h3010;// set a
mem[12'h002] = 16'h1005;// push 5
mem[12'h003] = 16'h3011;// set b
mem[12'h004] = 16'ha000;// call
mem[12'h005] = 16'h4009;// jmp add
mem[12'h006] = 16'h2012;// get c
mem[12'h007] = 16'he000;// out
mem[12'h008] = 16'h4008;//bye: jmp bye
mem[12'h009] = 16'h1001;//add: push 1
mem[12'h00a] = 16'hf000;// +
mem[12'h00b] = 16'h2010;// get a
mem[12'h00c] = 16'h2011;// get b
mem[12'h00d] = 16'hf000;// +
mem[12'h00e] = 16'h3012;// set c
mem[12'h00f] = 16'hb000;// ret
mem[12'h010] = 16'h0000;//a: 0x0000
mem[12'h011] = 16'h0000;//b: 0x0000
mem[12'h012] = 16'h0000;//c: 0x0000
Reference
이 문제에 관하여(vista에서 quartus의 46), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ohisama@github/items/61a5945ca35a4bc281ce텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)