Re: where are the 1's and 0's?
Posted: Sun Oct 02, 2011 10:52 pm
I lol'd.Combuster wrote:So you also believe that air shapes to the letter "a" when you speak?
The Place to Start for Operating System Developers
https://f.osdev.org/
I lol'd.Combuster wrote:So you also believe that air shapes to the letter "a" when you speak?
These steps involve transformations using hardware devices. They are not done alone in software.This is the phase I don't understand. It cannot be part of the processor because it doesn't understand characters, and it cannot be part of the program because a program is a collection of characters. Does that make sense?
Wikipedia also says:Can I convert MSB-OS_v3.img to .iso to run in virtual box? Wikipedia says:so I tried that but virtual box says MSB-OS_v3.iso is non-bootable.A CD or DVD image file, essentially equivalent to an ISO file. On such a file, simply changing the extension from IMG to ISO can make it usable as the latter by most programs.
I.e., it's not a CD. Looks like you haven't tried that.An archive format used for creating a disk image of floppy disks and HDDs.
ah ha .. yes. Thinking about it that way really clears it all up I think. Thanks.schilds wrote:These steps involve transformations using hardware devices. They are not done alone in software.This is the phase I don't understand. It cannot be part of the processor because it doesn't understand characters, and it cannot be part of the program because a program is a collection of characters. Does that make sense?
The first point to note is that the text you see on the screen is a translation of symbols that the computer understands into symbols humans understand. In other words, text is already represented within the computer as voltages and is translated (partly via the monitor) into visible form (i.e. light) vs special materials that emit light when charge is applied to them).
You mean the way humans (or dogs and cats) see shapes like a door ( a rectangle ) and say "yes, that is a door"? (well, a dog wouldn't say that, but still).I just thought of where computing is often done via recognition of actual shapes: Biological systems.
oh woops. Looks like I jumped to a conclusion after reading only the first line and missed the important bit.Combuster wrote:Wikipedia also says:Can I convert MSB-OS_v3.img to .iso to run in virtual box? Wikipedia says:so I tried that but virtual box says MSB-OS_v3.iso is non-bootable.A CD or DVD image file, essentially equivalent to an ISO file. On such a file, simply changing the extension from IMG to ISO can make it usable as the latter by most programs.I.e., it's not a CD. Looks like you haven't tried that.An archive format used for creating a disk image of floppy disks and HDDs.
And now I'm wondering if you did that on purpose or the person saying you need a shrink was actually spot on
I mean that it actually happens right down at the molecular level. For example, cells may receive instructions via proteins. They do this using receptors that only interact with proteins of the right shape. I believe some kinds of receptors in the nose work by shape as well.You mean the way humans (or dogs and cats) see shapes like a door ( a rectangle ) and say "yes, that is a door"? (well, a dog wouldn't say that, but still).
haha.schilds wrote:I mean that it actually happens right down at the molecular level. For example, cells may receive instructions via proteins. They do this using receptors that only interact with proteins of the right shape. I believe some kinds of receptors in the nose work by shape as well.You mean the way humans (or dogs and cats) see shapes like a door ( a rectangle ) and say "yes, that is a door"? (well, a dog wouldn't say that, but still).
Of course, it would be a somewhat curious coincidence if the symbols chosen by humans happened to resemble symbols chosen by millions of years of evolution where both symbols also conveyed the same information :p.
Yes. Within an appreciable timeframe? no.bonch wrote:Do you think computers could ever be conscious the way humans are?
There's a moral dilemma that comes along with that though - if we had computers that were conscious and sentient like humans, how could you justify enslaving one to unpaid housework?Combuster wrote:Yes. Within an appreciable timeframe? no.bonch wrote:Do you think computers could ever be conscious the way humans are?
By the time I can't walk anymore, maybe an AI can do my household chores for me
Indeed - I'm used to hearing the name of it rather than seeing it written down, but the p rings a bell now (though not literally - there's no actual bell and no ringing either).NickJohnson wrote:@DavidCooper: you mean Asperger's syndrome?
When you use a programming language or assembler, you're always working with some kind of program code that the processor won't understand directly, so it has to be compiled or assembled into the actual numbers which the processor is designed to handle, and all the characters will be eliminated in the process. The instruction mov al,"a" (assuming that's a valid construction in assembler - if it isn't, replace it with mov al,65) will be translated during the assembly process into the two bytes 10110000 01000001 (that's 176 65 in decimal and B0 41 in hex), and that is the actual program code. When these bytes are run through the processor, the processor will be triggered by the 10110000 byte into loading the byte following it in the program code into the register al. Even once your program is converted into number form, you probably won't see it as 1's and 0's as it's easier to read in decimal or hex form, and to display numbers in those forms needs some kind of viewing program (like a hex editor) to translate them for you and to convert any input from you back into binary, but the program code will be sitting in memory or on disk in binary form.bonch wrote:What I'm unsure of now is the "interface (possibly the wrong word)" between the symbols we use in programming and the binary states (voltages) understood by the processor. For example, when we program in assembly, we are dealing in symbols. These symbols, as I understand them, basically wrap operation codes into English sounding words and called "mnemonics". These operation codes still exist in the realm of symbols, right? As opposes to the processors language (electricity)? It must be a symbol because we can say 01 or AJMP, or 02 or LJMP (they are interchangeable/mean the same thing). But there is some phase of translation that translates these instructions from the symbols humans find useful (characters) into instructions the processor understands (binary electrical states). This is the phase I don't understand. It cannot be part of the processor because it doesn't understand characters, and it cannot be part of the program because a program is a collection of characters. Does that make sense?
I have only ever run it directly on a machine or through Bochs, so I'd recommend that you install Bochs and run it in that. you can ask here for help setting it up if you need to. Once you've got MSB-OS running, it has an on-disk manual containing embedded machine code examples which can be run through a monitor program, and this allows you to see what happens to the contents of the CPU registers as you run each instruction. Just working your way through those examples should clarify a lot of things for you and take away the mystery of what happens at the level underneath assembler.@DavidCooper I'm checking out MSB-OS, I think this program might be perfect to help me visualise the CPU and memory better.
I'm interested that you say "and bear in mind that even assembler keeps a lot hidden from you". This is the area I'm trying to understand. I think at the moment that the "lowest level" for a programmer is opcodes so I figured it would be simple to have an interpreter that just passes the operation codes to the processor but assembling turned out to be much more complicated than that .. :p ... anyway I'm confusing myself. Can I convert MSB-OS_v3.img to .iso to run in virtual box?