ZONG Wen Department of Computer Science and Engineering The Chinese University of Hong Kong...
-
Upload
annice-hawkins -
Category
Documents
-
view
215 -
download
0
Transcript of ZONG Wen Department of Computer Science and Engineering The Chinese University of Hong Kong...
CSCI 2510 Tutorial 1Basic Assembly and Data Representation
ZONG Wen
Department of Computer Science and EngineeringThe Chinese University of Hong Kong
Main topic:
1. Write an assembly program with given instruction
2. Two’s complement operation
3. Ordering of bytes in data
Write a machine program with given instruction
Basic component of a computer
Write a machine program with given instruction
There are only 6 machine instructions on a single-accumulator processor, namely: Load [Memory] {to ACC} e.g. Load [2872]Store [Memory] {from ACC} e.g. Store [1536]Add Constant {to ACC} e.g. Add -95Add [Memory] {to ACC} e.g. Add [2132]Multiply Constant {to ACC} e.g. Multiply 23Multiply [Memory]{to ACC} e.g. Multiply [298]
Write a machine program with given instruction
Variable x and y are stored in address 1000 and 1004, try to implement x2 + y2, store the result in 1008.
Load [1000]; load data to registerMultiply [1000]; perform memory + register operationStore [1008]; store temporary result to memoryLoad[1004]; Multiply[1004];Add[1008];Store[1008]; store result
Operation on two’s complement
Example: (–6) + 8 * 3 – 1 Step 1 11111010 + (00001000 * 00000011) – 00000001Step 2 (11111010 + 00011000) – 00000001Step 3 00010010 – 00000001Step 4 00010001Step 5 17 (decimal answer without overflow)
Operation on two’s complement
Example: (–6) + 8 * 3 – 1 Step 1 11111010 + (00001000 * 00000011) – 00000001Step 2 (11111010 + 00011000) – 00000001Step 3 00010010 – 00000001Step 4 00010001Step 5 17 (decimal answer without overflow)
Big endian and little endian
In big endian, you store the most significant byte in the smallest address
In little endian, you store the least significant byte in the smallest address
Big endian and little endian
For a data of 4 bytes: 90AB12CD
Big endian:
Big endian and little endian
For a data of 4 bytes: 90AB12CD
Little endian:
Float point representation
Q&A