<< Chapter < Page Chapter >> Page >
You will learn more assembly instructions in this lab.

Typical assembly operations

Loading constants to registers

Quite often you need to load a register with a constant. The C62x instructions you can use for this task are MVK , MVKL , and MVKH . Each of these instructions can load a 16-bit constant to a register. Read and understandthe description of these instructions in the manual.

(Loading constants): Write assembly instructions to do the following:

  • Load the 16-bit constant 0xff12 to A1 .
  • Load the 32-bit constant 0xabcd45ef to B0 .

Intentionally left blank.

Register moves, zeroing

Contents of one register can be copied to another register by using the MV instruction. There is also the ZERO instruction to set a register to zero. Learn how to use these instructions byreading the appropriate TI manual pages.

Loading from memory to registers

Because the C62x processor has the so-called load/store architecture, you must first load up the content of memoryto a register to be able to manipulate it. The basic assembly instructions you use for loading are LDB , LDH , and LDW for loading up 8-, 16-, and 32-bit data from memory. (There are some variations to theseinstructions for different handling of the signs of the loaded values.) Read and understand how these instructionswork.

However, to specify the address of the memory location to load from, you need to load up another register (used as anaddress index) and you can use various addressing modes to specify the memory locations in many different ways. The addressing modes is the method by which aninstruction calculates the location of an object in memory. The table below lists all the possible different ways tohandle the address pointers in C62x CPU. Note the similarity with the C pointer manipulation.

Syntax Memory address accessed Pointer modification
*R R None
*++R R Preincrement
*--R R Predecrement
*R++ R Postincrement
*R-- R Postdecrement
*+R[disp] R+disp None
*-R[disp] R+disp None
*++R[disp] R+disp Preincrement
*--R[disp] R+disp Predecrement
*R++[disp] R+disp Postincrement
*R--[disp] R+disp Postdecrement

The [disp] specifies the number of elements in word, halfword, or byte, depending on theinstruction type and it can be either 5-bit constant or a register . The increment/decrement of the index registers are also in termsof the number of bytes in word, halfword or byte. The addressing modes with displacements are useful when a blockof memory locations is accessed. Those with automatic increment/decrement are useful when a block is accessedconsecutively to implement a buffer, for example, to store signal samples to implement a digital filter.

(Load from memory): Assume the following values are stored in memory addresses:

100h fe54 7834h 104h 3459 f34dh108h 2ef5 7ee4h 10ch 2345 6789h110h ffff eeddh 114h 3456 787eh118h 3f4d 7ab3h

Suppose A10 = 0000 0108h . Find the contents of A1 and A10 after executing the each of the following instructions.

  • LDW .D1 *A10, A1
  • LDH .D1 *A10, A1
  • LDB .D1 *A10, A1
  • LDW .D1 *-A10[1], A1
  • LDW .D1 *+A10[1], A1
  • LDW .D1 *+A10[2], A1
  • LDB .D1 *+A10[2], A1
  • LDW .D1 *++A10[1], A1
  • LDW .D1 *--A10[1], A1
  • LDB .D1 *++A10[1], A1
  • LDB .D1 *--A10[1], A1
  • LDW .D1 *A10++[1], A1
  • LDW .D1 *A10--[1], A1

Intentionally left blank.

Questions & Answers

if three forces F1.f2 .f3 act at a point on a Cartesian plane in the daigram .....so if the question says write down the x and y components ..... I really don't understand
Syamthanda Reply
hey , can you please explain oxidation reaction & redox ?
Boitumelo Reply
hey , can you please explain oxidation reaction and redox ?
Boitumelo
for grade 12 or grade 11?
Sibulele
the value of V1 and V2
Tumelo Reply
advantages of electrons in a circuit
Rethabile Reply
we're do you find electromagnetism past papers
Ntombifuthi
what a normal force
Tholulwazi Reply
it is the force or component of the force that the surface exert on an object incontact with it and which acts perpendicular to the surface
Sihle
what is physics?
Petrus Reply
what is the half reaction of Potassium and chlorine
Anna Reply
how to calculate coefficient of static friction
Lisa Reply
how to calculate static friction
Lisa
How to calculate a current
Tumelo
how to calculate the magnitude of horizontal component of the applied force
Mogano
How to calculate force
Monambi
a structure of a thermocouple used to measure inner temperature
Anna Reply
a fixed gas of a mass is held at standard pressure temperature of 15 degrees Celsius .Calculate the temperature of the gas in Celsius if the pressure is changed to 2×10 to the power 4
Amahle Reply
How is energy being used in bonding?
Raymond Reply
what is acceleration
Syamthanda Reply
a rate of change in velocity of an object whith respect to time
Khuthadzo
how can we find the moment of torque of a circular object
Kidist
Acceleration is a rate of change in velocity.
Justice
t =r×f
Khuthadzo
how to calculate tension by substitution
Precious Reply
hi
Shongi
hi
Leago
use fnet method. how many obects are being calculated ?
Khuthadzo
khuthadzo hii
Hulisani
how to calculate acceleration and tension force
Lungile Reply
you use Fnet equals ma , newtoms second law formula
Masego
please help me with vectors in two dimensions
Mulaudzi Reply
how to calculate normal force
Mulaudzi
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get Jobilize Job Search Mobile App in your pocket Now!

Get it on Google Play Download on the App Store Now




Source:  OpenStax, Finite impulse response. OpenStax CNX. Feb 16, 2004 Download for free at http://cnx.org/content/col10226/1.1
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Finite impulse response' conversation and receive update notifications?

Ask