1. The lounge is for the CodeProject community to discuss things of interest to the community, and as a place for the whole community to participate. It is, first and foremost, a respectful meeting and discussion area for those wishing to discuss the life of a Software developer.
The #1 rule is: Be respectful of others, of the site, and of the community as a whole.
2. Technical discussions are welcome, but if you need specific programming question answered please use Quick Answers[^], or to discussion your programming problem in depth use the programming forums[^]. We encourage technical discussion, but this is a general discussion forum, not a programming Q&A forum. Posts will be moved or deleted if they fit better elsewhere.
4. No politics (including enviro-politics[^]), no sex, no religion. This is a community for software development. There are plenty of other sites that are far more appropriate for these discussions. Or if you must, use the Back Room[^] - but enter at your own risk.
5. Nothing Not Safe For Work, nothing you would not want your wife/husband, your girlfriend/boyfriend, your mother or your kid sister seeing on your screen. For those discussions where you wish to be a little more frank, use the Soapbox[^]
6. Any personal attacks, any spam, any advertising, any trolling, or any abuse of the rules will result in your account being removed.
7. Not everyone's first language is English. Be understanding.
Please respect the community and respect each other. We are of many cultures so remember that. Don't assume others understand you are joking, don't belittle anyone for taking offense or being thin skinned.
We are a community for software developers. Leave the egos at the door.
Yes ! YES ! Finally ! He's leaving ! No more drivel, no more accountant jokes, no more English pride, no more insolvable CCCs, no more moon landing conspiracy, no more ink cartridges, no more *clicks open Dave's post* ... Oh...
Sorry Dave, couldn't resist
I think words like 'destiny' are a way of trying to find order where none exists. - Christian Graus
Entropy isn't what it used to.
I do agree with you even though sometimes make-up(like corpse paint in black metal) fits the mood of the band.
I never did like the 80's glam however, not that they aren't good bands,it's just not my style.
Youtube doesn't help me as I have no sound, so I'll have to wait for about 8 hours
somewhere on the Internet I read that the high-low voltage change is not immediate but happens slowly instead.
for example a voltage graph of 010 would be:
I've also read that the "/" and "\" parts are a factor that slows processors' speed
why does this happen,( can you recomend me a book or something to understand this better ? )
and does it mean that 11110000 is processed faster than 10101010 for example ?
thanks a lot !!
edit: I tried putting my pretty 'graph' on inside 'code' so it would look ok... it didn't work :(
I'm not sure of which operation would perform quicker but to understand why the voltage is not instant would be to look at electronic circuits and transistors books i think.
A value of 0 or 1 in binary is determined when the voltage goes below or above a certain threshold. For example a binary value of 0 might be when the voltage is less than 0.25v and a binary value of 1 could be above 0.75v. Because of this, coupled with the fact that the voltage does not change instantly, there is a slight delay for when the binary value changes.
This delay is also taken into consideration for setting clock speeds since you have many transistors chained together (inside a CPU for example), each of which has a slight delay when its binary value (voltage) changes so the clock speed needs to ensure that all transistors have had enough time to change their value before executing the command.
Transistors are unable to change value (voltage) instantly due to the physical properties of the material its made of and possibly requiring an infinite amount of energy to perform a change in 0 seconds... will need to check the actual reason as i can't recall it atm.
I don't think there will be any difference in performance between those two values listed since it would depend on the clock speed.
Note: this is what i can remember from university electronics class..
Everything in digital circuits are sync-ed to a clock that is constant.
If a bit doesn't settle to the proper value by the time of the clock pulse as expected then the whole shee-bang will fail and the clock must be slowed all the time. So due to the constant clock and do or die nature of digital circuits, it is impossible for a particular bit pattern to be processed faster than another. Current draw will fluctuate some however.
Microprocessors are all built on a sheet like cookies and the ones that can't reliably truck bits around inside with a desired clock rate are stamped as slower so they can reliably process data.
Hence the different speed grades of Pentiums for example. They don't set out to make slower ones the yield just dictates this.
What do you mean by "processed faster"? You are presenting numbers and not state transitions I assume. Operations on numbers are determined by processor clock speeds which are set to allow for the latency in transitions. Thus a value is set an operation is performed. These happen in fixed intervals. The CPU doesn't care what the number is - the speed of processing is the same.
"The whole problem with the world is that fools and fanatics are always so certain of themselves, and wiser people so full of doubts." - Bertrand Russell
No, it's not processed faster. If you're talking about a serial stream, the sample is taken at some point in the middle of the defined "bit" time. The rising and falling edges are not instantaneous due, I believe, to natural capacitance of the circuit and other factors. You can't just gate something on or off instantaneously.
Keep in mind that everything in a computer is synchronized to a clock cycle or some multiple of a clock cycle (though modern CPU's have several different clocks doing things) the point is, any bits, whether processed in serial, sampled at a particular frequency, or determined by rising/falling edges, or processed in parallel as is the case with a memory or instruction bus, everything marches to the beat of the same drummer, so just because you have non-instantaneous rising/falling edges, this doesn't affect the processing speed.
Rise and fall times for most technologies are nearly equal, so no, it doesn't affect the 'processing' time. As Marc mentioned, the device doing the processing is clocked at a rate consistent with the technology, and individual bits are sampled after an appropriate settling time, nearer the middle of the bit time than the transition. What is significantly affected by transition time is the power consumption of the device. Power is defined as the product of the voltage across and the current through a path. For semiconductor devices, a one is defined as a high voltage with little or no current, while a zero is a relatively high current with little or no voltage; both states consume little power. But the time spent between states can consume large amounts of power because the voltage and current are both non-zero. The quicker we move from one state to the other, the less power is consumed, and the less heat we have to get rid of.