You are on page 1of 21

Programming Languages & Embedded Systems Chapters 4 & 5

ECE 5850

Review
How big is the address space for a microprocessor whose address bus is 20 bits wide?

ECE 1010

Review
What is the biggest number that can be represented with 24 bits?

ECE 1010

Review
What is the hexadecimal equivalent of 000100112?

ECE 1010

Review
What is the hexadecimal (twos complement) representation of -4510?

ECE 1010

Development Computer vs. Target Computer

ECE 1010

Machine Language

The pattern of 1s and 0s that specify the operation of the CPU New generations of CPUs are generally backwardly compatible RISC (Reduced Instruction Set Computers)

ECE 1010

Assembly Language

One-to-one correspondence with machine language Assembly and Machine Languages are considered low-level languages

ECE 1010

High-Level Languages

Designed for programmers to express algorithms Interpretive Compiled Hybrid

ECE 1010

Interpretive Languages

A program compiles and executes each line of the interpretive program BASIC Java Matlab

ECE 1010

10

Compiled Languages

Compiler compiles code one time Compiled code is executed separately C and C++ Ada Fortran
ECE 1010 11

Hybrid

Forth Java Smalltalk PBasic

ECE 1010

12

Integrated Development Environments

Package into a single unit


Text editor Compiler Linker Emulator

ECE 1010

13

Why Choose One Language over Another?

Programmer familiarity Performance Reliability

ECE 1010

14

Event Driven Programming

Program structure is divided into


Events Services

ECE 1010

15

Event Checkers
IF switch-is-closed AND switch-was-open THEN switch-closed event has occurred

ECE 1010

16

Switch Bounce

ECE 1010

17

Software De-Bouncing

ECE 1010

18

Services

The actions that are to be performed when an event is detected

ECE 1010

19

State Machines

ECE 1010

20

For Next Class

Project Abstracts Due Be prepared to present your project idea

ECE 1010

21

You might also like