I'm working on making a computer in Minecraft (creative mode)
the copy/paste part of the processor
the "rotate bit" part of the processor
the only memory I have right now
another view of memory
note: for ease of communication, a "byte" will mean 4 bits
Picture one shows the blocks that let me copy one byte into another, and specify which bits I want to copy. Blue and white are the two bytes, and yellow is the "which bits to override" part. Half of the light-blue part tells me how much to rotate the, and the other half tells the computer which code to run next. Right now it just accepts three 4-bit lines of code (ignores rotations and next-line instructions). The biggest part ahead of me is connecting the processor with the memory.
Picture 2 shows the rotating blocks. I made it in its own world, so now I'll have to copy it into the main "computer" world. Basically, it takes 4 bits and rotates them right _ number of bits (_ is determined by the light-blue input from above). Its my most recent creation too.
Each rectangular prism is a byte of memory. The central yellow "wire" is the clear wire (clears the memory to 0000). The other yellows set the values of each bit, and the output tells the computer the values of each bit (well, it will when I connect the processor to the memory anyway xD).
What do you guys think?
Offline
G0D_M0D3 wrote:
Or download computercraft...
That's right, just burst my bubble
Offline
I am planning one too. For a question, why is it such that one byte is four bits instead of the real life standard of eight bits? Just a plan to simplify the processor? Anyway, I am hoping for a pretty good display (I've made a compact Seven-Segment Display using glowstone lamps) and possibly even audio output which is, as far as I know, unheard of in MC computers.
Offline
16Skittles wrote:
I am planning one too. For a question, why is it such that one byte is four bits instead of the real life standard of eight bits? Just a plan to simplify the processor? Anyway, I am hoping for a pretty good display (I've made a compact Seven-Segment Display using glowstone lamps) and possibly even audio output which is, as far as I know, unheard of in MC computers.
Well, each instruction has to be 4 bits long (well, technically 4 groups of 4 bits long), and it is just easier to have a word that means 4 bits since the computer is a 4-bit processor. As to why it is a 4-bit processor, you are correct, I chose 4-bits just to simplify it. An 8 bit processor might be a (very) long term goal, but 4-bit makes everything easier and smaller. I don't have any display or input yet. I'm working on the main hardware that will do the processing and storing.
As I said above, each instruction will be stored in 4 "bytes" for a total of 16 bits. So
1000 // copy from 1010 // copy to 1001 // which bits to change 0101 // rotate bits & location of next instruction.
would be 1 instruction.
Offline
Great!!!
Offline
Jeb's new game will have a workable in game computer I've heard
Offline
I'm working on one, but I quit after I made the ram (8 bits).
Offline
backspace_ wrote:
Jeb's new game will have a workable in game computer I've heard
You mean Notch's?
Offline
Wait, is this supposed to be a toy computer in MC?
Offline
bobbybee wrote:
Wait, is this supposed to be a toy computer in MC?
I'm not sure what you mean by "toy". It is supposed to be a computer (simulate on a "real" computer) that can execute a program. Right now, the only thing on the agenda is being able to execute a program that switches bits. Forms of input and output may be added, but as of now, just the computing is important to me.
Offline
And exactly WHAT would this computer EVER be (seriously) useful for, other than wasting life building?
Offline
soupoftomato wrote:
And exactly WHAT would this computer EVER be (seriously) useful for, other than wasting life building?
Developing my understanding of computers in real life?
Offline
MoreGamesNow wrote:
soupoftomato wrote:
And exactly WHAT would this computer EVER be (seriously) useful for, other than wasting life building?
Developing my understanding of computers in real life?
Ah.
Well, there are more physical ways to do it.
Offline
soupoftomato wrote:
MoreGamesNow wrote:
soupoftomato wrote:
And exactly WHAT would this computer EVER be (seriously) useful for, other than wasting life building?
Developing my understanding of computers in real life?
Ah.
Well, there are more physical ways to do it.
I can't exactly go to the store and buy transistors (not to mention that the size of transistors is so small I couldn't exactly put them together ). I might be able to simulate it with current and magnets (old computers used those), but no where near as quickly as I can in Minecraft. Paper and pencil is 2 dimensional, and severely limiting. Minecraft has speed (relative to real-life-construction), is 3 dimensional, and is free.
How else should I learn about logic gates, processors, adders, bits, and binary code?
Offline
How are you supposed to actually execute anything. There aren't transistor blocks in minecraft (or do I not pay close enough attention?)
Offline
MoreGamesNow wrote:
16Skittles wrote:
I am planning one too. For a question, why is it such that one byte is four bits instead of the real life standard of eight bits? Just a plan to simplify the processor? Anyway, I am hoping for a pretty good display (I've made a compact Seven-Segment Display using glowstone lamps) and possibly even audio output which is, as far as I know, unheard of in MC computers.
Well, each instruction has to be 4 bits long (well, technically 4 groups of 4 bits long), and it is just easier to have a word that means 4 bits since the computer is a 4-bit processor. As to why it is a 4-bit processor, you are correct, I chose 4-bits just to simplify it. An 8 bit processor might be a (very) long term goal, but 4-bit makes everything easier and smaller. I don't have any display or input yet. I'm working on the main hardware that will do the processing and storing.
As I said above, each instruction will be stored in 4 "bytes" for a total of 16 bits. SoCode:
1000 // copy from 1010 // copy to 1001 // which bits to change 0101 // rotate bits & location of next instruction.would be 1 instruction.
Lol personally I hate taking that approach. The problem being that everything is purely hypothetical and you can't test to see if something is wrong.
Offline
bobbybee wrote:
How are you supposed to actually execute anything. There aren't transistor blocks in minecraft (or do I not pay close enough attention?)
You're right, there isn't a transistor block. But many computer parts can be simulated using block combinations. For instance, I'm using this as a bit. If you power either side, it stays powered until the other side is powered. Similarly, you can make NOT, AND, OR, etc.
Code is stored in the memory (see my post before this).
Offline
16Skittles wrote:
Lol personally I hate taking that approach. The problem being that everything is purely hypothetical and you can't test to see if something is wrong.
You can run through your program on paper and see if the results are emulated by the computer. A (very) simple program could be this:
0100
0101
1111
0000
------
0000
0000
0000
0000
It copies byte "4" into byte "5", and then becomes "idle" (copying byte "0" into itself, without replacing any bits or rotating at all)
Last edited by MoreGamesNow (2012-04-11 21:31:35)
Offline
soupoftomato wrote:
backspace_ wrote:
Jeb's new game will have a workable in game computer I've heard
You mean Notch's?
possibly, the space survival game?
Offline