Greetings
I'm afraid you are being confused by a misunderstanding of what an icon actually is and how it functions and this is the basis behind the Graphic User Interface (GUI)
http://en.wikipedia.org/wiki/Graphical_user_interface.
Just as the Brake Pedal in your car is not the braking system itself but rather an interface that humans can easily operate to somewhat remotely activate a hydraulic piston to squeeze brake pads on a disc or expand brake "shoes" into a drum on any number of wheels, an icon is a "symbolic link" to software(s).
Computers run on binary code, commonly referred to as "Machine Language"
http://en.wikipedia.org/wiki/Machine_code since it is easiest to make electronic devices that exist in just one of two states - Hi/Lo, Off/On, Yes/No, 1/0. Note here that already human friendly text (Hi/Lo, Off,On) differs slightly from the binary integers since 0/1 is a somehow more intuitive sequence, but "1" is the "On" state, while "0" is the "Off" state so while "0/1" looks "more right" to most of us, "when in Rome do as the Romans do" or more exactly we must link together text we can easily understand to numbers the machine can follow. Writing code in Machine Langauge is exceedingly difficult for humans so we have "higher code languages", like Assembly, C, C++, etc. that can translate syntax of text into binary the machine can "understand".
Many people find memorizing commands and their numerous switching options, daunting as well. Icons are an attempt to employ the "a picture says 1000 words" concept because, using your example of "keil", many have no idea what "keil" is but those same people have no problem figuring that a picture of a pen on paper in icon form has something to do with writing text. However the picture is not the file but only a link assigned to that file. It is entirely possible to use the exact same icon for every application/program on your desktop but that would rather defeat the purpose of being more "user friendly". It does however illustrate that the icons are just links to an instruction or set of instructions.
This is a concept you must grasp before you even begin to write code. To return to the auto braking system analogy, all a person needs to operate brakes is a working leg and foot, the knowledge and the will to use them. To actually work on the brakes themselves you need a lot more knowledge and a box of tools.