Re: About programing, a general question

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2010-12-22 at 10:52 -0500, Jerry Feldman wrote:
> On 12/21/2010 03:48 PM, Parshwa Murdia wrote:
> > On Wed, Dec 22, 2010 at 12:24 AM, Jerry Feldman <gaf@xxxxxxx
> > <mailto:gaf@xxxxxxx>> wrote:
> >
> Yes and no. It is related to an understanding of what a computer really
> does. While CPUs today are very complex, such as out-of-order execution,
> the basic underlying premise is the same. If you understand binary
> arithmetic and logical arithmetic, then you have an understanding of
> what a CPU really does. You certainly don't need to understand what an
> or gate or and gate is, but you need to understand what happens when you
> add 2 positive integers and get a negative result, 

Not an argument with what you say.  I think most of it is sound advice,
but I would like to, make one comment.

I found that when teaching myself 'C', 10 or 20 minutes contemplating an
'and' or an 'or' gate gave me enough of an 'aha!' that I could
understand what was going on.  Of course, that was proceeded by another
twenty minutes or so understanding the basic switching capabilities of
transistors. Getting to understand basic computing cycles as governed by
a crystal clock put everything into proportion timewise. The same with a
template of a CPU showing things like the decoder, registers, and the
ALU.  I spent just enough time to get the idea of how data and
instructions flowed.  Knowing why there was a difference between DRAM
(capacitors) memory and SRAM (flip-flops) memory answered a lot of
questions of why things were done one way rather than the other.  

I didn't want to become an engineer, or build a computer from scratch in
my garage, but I did want to get passed the frustrating notion of
programming something the way I was told to just because 'I said so'.
There is always a reason why things are done the way they are.

-- 
Regards Bill
Fedora 14, Gnome 2.32
Evo.2.32, Emacs 23.2.1

-- 
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines

[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux