You need to figure out how many sheets of 4'x8' plywood you need to cover the roof of your new, flat-roof, rectangular shed. You can take a 1'x1' size template and place it over the roof and count up the total one by one:
NumSheets:= RoundUp[(1 + 1 + 1 + ...) / 48)]
Or you can use a little mathematics and say:
NumSheets:= RoundUp(Length x Height / 48)
Or you use a little more abstract mathematics and say:
NumSheets:= RoundUp(ShedSurfaceArea / SheetArea)
If you do the mathematics properly in each case, you'll end up with the same answer. But the latter are much more general than the former and can more easily be extended to more complicated shed and sheet shapes (E.g. a chicken-shaped shed covered by Escher blocks). That's what SmallTalk and the like try to do.
Similarly, any particular thought you have recorded in you head by some physical set neurons that are connected in some particular way. But the way you get to that particular thought can be highly abstract or highly particular. It's easier to see patterns when the thought is more general than when it concentrates on particulars.
If you think about the registers on the chip too much you can miss the larger patterns. But it is, of course, important to have some understanding of what the compiler is telling the chip to do for best efficiency.
HTH a bit.
[Edit - typos.]
Cheers,
Scott.