8086 program to convert binary to Grey code

Prerequisite – Binary to/from Gray Code
Problem – Write a program to convert Binary number to Grey code 8-bit number where starting address is 2000 and the number is stored at 2500 memory address and store result into 2600 memory address.

Example –

Algorithm –

  1. Move value at [2500] into AL
  2. Move AL into BL
  3. Logical shift right AL one time
  4. XOR BL with AL (Logically) and store into BL
  5. Move content of BL into 2600
  6. Stop

Program –

Memory Mnemonics Operands Comment
2000 MOV AL, [2500] [AL] <- [2500]
2004 MOV BL, AL [BL] <- [AL]
2006 SHR AL, 01 Shift Right one time
2008 XOR BL, AL [BL] <- [BL] @ AL
200A MOV [2600], BL [2600] <- [BL]
200E HLT Stop

Explanation – Registers AL, BL are used for general purpose

  1. MOV is used to transfer the data
  2. SHR is used to shift right (logically) up to counter is not zero
  3. XOR is used to exclusive-or of two values (logically)
  4. HLT is used to halt the program

See for 8085 program to convert binary numbers to gray



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.