Explain XLAT instruction with help of example, Computer Engineering

Assignment Help:

Q. Explain XLAT instruction with help of example?

Let's presume a table of hexadecimal characters signifying all 16 hexadecimal digits in table:

HEXA      DB      '0123456789ABCDEF'

760_Explain XLAT instruction with help of example.png

The table comprises the ASCII code of every hexadecimal digit:

(All value in hexadecimal)

If we place 0Ah in AL with the thought of converting it to ASCII we have to set BX to offset of HEXA and invoke XLAT.  You need not specify table name with XLAT hence it is implicitly passed by setting BX to HEXA table offset. This instruction would do the subsequent operations:

It will first add AL to BX producing an effective address which points to eleventh entry in the HEXA table.

Content of this entry is now moved to AL register which means 41h is moved to AL. 

Or we can say in other words, XLAT sets AL to 41h since this value is located at HEXA table offset 0Ah. Please consider that 41h is the ASCII code for hex digit A. The subsequent sequence of instructions will accomplish this:

MOV AL, 0Ah    ; index value

MOV BX, OFFSET HEXA; offset of the table HEXA

XLAT     

The above tasks can be executed without XLAT instruction however it will need a long series of instructions like:

MOV AL, 0Ah                                   ; index value

MOV   BX, OFFSET HEXA             ; offset of the table HEXA

PUSH BX                                           ; save the offset

ADD BL, AL                                     ; add index value to table

                                                                        ; HEXA offset

MOV   AL, [BX]                                ; retrieve the entry

POP    BX                                           ; restore BX


Related Discussions:- Explain XLAT instruction with help of example

Anu, write a program to find the area under the curve y=f(x) between x=a an...

write a program to find the area under the curve y=f(x) between x=a and y=b integrate y=f(x) between the limits of a and b. the area under a curve between two points can be found b

Define looping in assembly language, Q. Define looping in assembly language...

Q. Define looping in assembly language? LOOPING  ; Program: Assume a constant inflation factor that is added to a series of prices ; stored in the memory. The program

Qualitative independent variable, Let Consider a multiple regression model ...

Let Consider a multiple regression model for a response y, with one quantitative idividually variable x1, and one qualitative variable at three levels. a)    Write a first-order m

Explain bottom up parsing, Explain Bottom up parsing. Bottom up pars...

Explain Bottom up parsing. Bottom up parsing: This parse attempts to increase syntax tree for an input string by a sequence of reduction. If the input string can be decreas

What is associative mapping cache, Q. What is Associative Mapping Cache? ...

Q. What is Associative Mapping Cache? The most fastest and flexible cache organization employs an associative memory that is displayed in Figure below. The associative memory s

Logical difference among move a to b and compute b = a, What is the  logic...

What is the  logical difference among Move A TO B and COMPUTE B = A ? Ans) In case of Move A TO B it will move whatever the value of a in to b. It mean it will move nume

Develop a menu driven program, Q.  Develop a Menu driven program with follo...

Q.  Develop a Menu driven program with following menu: a.  Binary to Decimal b.  Binary to Octal c.  Binary to Hexadecimal d.  Exit (Put proper validation for input

What is jmx architecture, JMX is based on a 3-level architecture:   ?...

JMX is based on a 3-level architecture:   ? The Probe level have the probes (known as MBeans) instrumenting the resources. Also known as the Instrumentation level. ? The A

Find out the 2's complement of 1101110, The 2's complement of the number 11...

The 2's complement of the number 1101110 is ? Ans. 1's complement of 1101110 is = 0010001 ans hence 2's complement of 1101110 is = 0010001 + 1 = 0010010.

Define electronic data interchange, Define Electronic Data Interchange. ...

Define Electronic Data Interchange. An EDI stand for Electronic Data Interchange is used by organizations for transactions which occur on regular basis to a pre-determined for

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd