Information Hiding: Hiding the complexity of a system to simply the experience for the user.
Abstraction: The process of removing unnecessary details in the representation of a system.
To Abtract you Hide Information to create an Abstraction.
Levels of Abstraction
Application Level: Hides complex process(es) behind an icon.
High Level Programming Language: Hides low levels commands behind a single high level one eg. IF
Machine Code: Hides complex electronics behind a command eg. ADD
Electronics: Hides the physical atomic interactions behind electronic components.