Principles of programming for embedded systems development. Includes principles of software development in Unix, C and other high level languages, input/output, data types and variables, operators and expressions, program selection, repetition, functions, arrays, strings, introduction to algorithms, software projects, debugging, documentation. Includes hands-on applications in microprocessor environments.