Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
CSCI 2510 Tutorial 1 Basic Assembly and Data Representation ZONG Wen Department of Computer Science and Engineering The Chinese University of Hong Kong [email protected] 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 singleaccumulator 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 -95 Add [Memory] {to ACC} e.g. Add [2132] Multiply Constant {to ACC} e.g. Multiply 23 Multiply [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]; Multiply [1000]; Store [1008]; Load[1004]; Multiply[1004]; Add[1008]; Store[1008]; load data to register perform memory + register operation store temporary result to memory store result Operation on two’s complement Example: (–6) + 8 * 3 – 1 Step 1 11111010 + (00001000 * 00000011) – 00000001 Step 2 (11111010 + 00011000) – 00000001 Step 3 00010010 – 00000001 Step 4 00010001 Step 5 17 (decimal answer without overflow) Operation on two’s complement Example: (–6) + 8 * 3 – 1 Step 1 11111010 + (00001000 * 00000011) – 00000001 Step 2 (11111010 + 00011000) – 00000001 Step 3 00010010 – 00000001 Step 4 00010001 Step 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