vistaでquartus その43
概要
vistaでquartusやってみた。
俺cpuやってみた。
コンパイラでコンパイルして、アセンブラーでアセンブルした。
写真
メモリー
mem[12'h000] = 16'h1001;// push 1
mem[12'h001] = 16'h302f;// set a
mem[12'h002] = 16'h1001;// push 1
mem[12'h003] = 16'h3030;// set b
mem[12'h004] = 16'h202f;//label30: get a
mem[12'h005] = 16'h2030;// get b
mem[12'h006] = 16'hf004;// *
mem[12'h007] = 16'h3031;// set c
mem[12'h008] = 16'h2031;// get c
mem[12'h009] = 16'h100a;// push 10
mem[12'h00a] = 16'hf005;// /
mem[12'h00b] = 16'h1030;// push 48
mem[12'h00c] = 16'hf000;// +
mem[12'h00d] = 16'he000;// out
mem[12'h00e] = 16'h2031;// get c
mem[12'h00f] = 16'h100a;// push 10
mem[12'h010] = 16'hf006;// %
mem[12'h011] = 16'h1030;// push 48
mem[12'h012] = 16'hf000;// +
mem[12'h013] = 16'he000;// out
mem[12'h014] = 16'h1020;// push 32
mem[12'h015] = 16'he000;// out
mem[12'h016] = 16'h102c;// push ','
mem[12'h017] = 16'he000;// out
mem[12'h018] = 16'h1020;// push 32
mem[12'h019] = 16'he000;// out
mem[12'h01a] = 16'h202f;// get a
mem[12'h01b] = 16'h1001;// push 1
mem[12'h01c] = 16'hf000;// +
mem[12'h01d] = 16'h302f;// set a
mem[12'h01e] = 16'h202f;// get a
mem[12'h01f] = 16'h1009;// push 9
mem[12'h020] = 16'hf001;// <
mem[12'h021] = 16'h5004;// jz label30
mem[12'h022] = 16'h100d;// push 13
mem[12'h023] = 16'he000;// out
mem[12'h024] = 16'h2030;// get b
mem[12'h025] = 16'h1001;// push 1
mem[12'h026] = 16'hf000;// +
mem[12'h027] = 16'h3030;// set b
mem[12'h028] = 16'h1001;// push 1
mem[12'h029] = 16'h302f;// set a
mem[12'h02a] = 16'h2030;// get b
mem[12'h02b] = 16'h1009;// push 9
mem[12'h02c] = 16'hf001;// <
mem[12'h02d] = 16'h5004;// jz label30
mem[12'h02e] = 16'h402e;//bye: jmp bye
mem[12'h02f] = 16'h0000;//a: 0x0000
mem[12'h030] = 16'h0000;//b: 0x0000
mem[12'h031] = 16'h0000;//c: 0x0000
mem[12'h000] = 16'h1001;// push 1
mem[12'h001] = 16'h302f;// set a
mem[12'h002] = 16'h1001;// push 1
mem[12'h003] = 16'h3030;// set b
mem[12'h004] = 16'h202f;//label30: get a
mem[12'h005] = 16'h2030;// get b
mem[12'h006] = 16'hf004;// *
mem[12'h007] = 16'h3031;// set c
mem[12'h008] = 16'h2031;// get c
mem[12'h009] = 16'h100a;// push 10
mem[12'h00a] = 16'hf005;// /
mem[12'h00b] = 16'h1030;// push 48
mem[12'h00c] = 16'hf000;// +
mem[12'h00d] = 16'he000;// out
mem[12'h00e] = 16'h2031;// get c
mem[12'h00f] = 16'h100a;// push 10
mem[12'h010] = 16'hf006;// %
mem[12'h011] = 16'h1030;// push 48
mem[12'h012] = 16'hf000;// +
mem[12'h013] = 16'he000;// out
mem[12'h014] = 16'h1020;// push 32
mem[12'h015] = 16'he000;// out
mem[12'h016] = 16'h102c;// push ','
mem[12'h017] = 16'he000;// out
mem[12'h018] = 16'h1020;// push 32
mem[12'h019] = 16'he000;// out
mem[12'h01a] = 16'h202f;// get a
mem[12'h01b] = 16'h1001;// push 1
mem[12'h01c] = 16'hf000;// +
mem[12'h01d] = 16'h302f;// set a
mem[12'h01e] = 16'h202f;// get a
mem[12'h01f] = 16'h1009;// push 9
mem[12'h020] = 16'hf001;// <
mem[12'h021] = 16'h5004;// jz label30
mem[12'h022] = 16'h100d;// push 13
mem[12'h023] = 16'he000;// out
mem[12'h024] = 16'h2030;// get b
mem[12'h025] = 16'h1001;// push 1
mem[12'h026] = 16'hf000;// +
mem[12'h027] = 16'h3030;// set b
mem[12'h028] = 16'h1001;// push 1
mem[12'h029] = 16'h302f;// set a
mem[12'h02a] = 16'h2030;// get b
mem[12'h02b] = 16'h1009;// push 9
mem[12'h02c] = 16'hf001;// <
mem[12'h02d] = 16'h5004;// jz label30
mem[12'h02e] = 16'h402e;//bye: jmp bye
mem[12'h02f] = 16'h0000;//a: 0x0000
mem[12'h030] = 16'h0000;//b: 0x0000
mem[12'h031] = 16'h0000;//c: 0x0000
以上。
Author And Source
この問題について(vistaでquartus その43), 我々は、より多くの情報をここで見つけました https://qiita.com/ohisama@github/items/2bcdf6abceb7a7b9bce8著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .