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

Define rules for reducing karnaugh maps, Define Rules for Reducing Karnaugh...

Define Rules for Reducing Karnaugh Maps? The rules for reducing Karnaugh Maps (k- maps) are as follows: All of the 1's in the Karnaugh Map are called as minterms. The

What is chattering as applied to mechanical switches, What is chattering as...

What is chattering as applied to mechanical switches used in digital systems and why do they occur?  What is its effect on the functioning of a sequential circuit? Ans Chat

Multi-threaded processors, Multi-Threaded Processors In unit 2, we have...

Multi-Threaded Processors In unit 2, we have gone through the use of distributed shared memory in parallel computer architecture. Although the use of distributed shared memory

Explain about parallel programming environment, Q. Explain about parallel p...

Q. Explain about parallel programming environment? The parallel programming environment comprises of a debugger, an editor, performance evaluator, programme visualizer for incr

What is multiprogramming, What is multiprogramming or multitasking? The...

What is multiprogramming or multitasking? The operating system manages the concurrent implementation of several application programs to make the best possible uses of computer

Instruction level-parallelism based on granularity size, Instruction level ...

Instruction level This is the initial level and the degree of parallelism is uppermost at this level. The fine grain size is used at statement or instruction level as only few

What is interrupt vector table, Interrupt vector table is always created in...

Interrupt vector table is always created in first 1K area of the memory. Explain why? When CPU receives an interrupt type number from PIC, it uses this number to look up corres

Subtract the numbers using 2's complements, Subtract -27 from 68 using 2's ...

Subtract -27 from 68 using 2's complements. Ans. By using 2's complement 68-(-27)= 68-(-27) 2's complement representation of 68 = 01000100(64+4) 2's complement representatio

Define the while loop, The while Loop The while loop repeats a statemen...

The while Loop The while loop repeats a statement until the test at the top proves false. As an example, here is a function to return the length of a string. int string_leng

What is multiprogramming, Multiprogramming is a rapid switching of the CPU ...

Multiprogramming is a rapid switching of the CPU back and forth among processes.

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