Department of
Computer Science and Engineering
Title: Familiarizing with MDA 8086 trainer Kit
Commands in Serial Monitor Mode.
Assembly Programming Lab
CSE 3106
Jashore University of Science and Technology
1 Objective(s)
• To understand about the MDA 8086 trainer Kit Commands in Serial Monitor Mode.
• To understand the verification of the value of different registers both in Machine Code Mode and Serial
Monitor Mode of MDA-8086 Kit.
2 Problem analysis
2.1 MDA 8086 trainer Kit
Figure 1: 16 Bit MDA 8086 Processor Board
2.2 Basic Operation
MDA-8086 can operate in two modes.
1. Machine Code Mode
2. Serial Monitor Mode
In machine code mode, user can load instructions/ program directly by keypad and can observe the contents of
different registers in LCD. On the other hand, user can load instruction/program from computer via serial port
in Serial Monitor Mode.
Serial monitor is the basic monitor program mode to have data communication between MDA-8086 and Com-
puter (i.e., PC). To use serial monitor, move jumper P1 which located on the PCB like this
After this press the RES key to change the mode of MDA-8086 serial monitor mode:
Then connect the serial interface of the MDA-8086 with the Computer (PC) interface and run the WinComm
program in PC to have the following screen shot after pressing RES key in the kit.
2.3 Operation Serial Monitor Command
User can only use command which stored at serial monitor using WinComm. Serial monitor can execute to
command when user type the command and then press ENTER key. If there is no any command at serial
monitor, error message will be displayed with bell sound and serial monitor prompt will be displayed again.
8086 >?
HELP Command
E segment : offset...................: Enter Data To Memory
D segment : offset length............. Dump Memory Contents
R [register name]................... Register Display & Change
M address1, length, address2.......Move Memory From 1 to 2
F address, length, data...........: Fill Memory With Any Data
L Return key..................... Program Down Load
G segment : offset...................Execute Program
T............ Program 1 step execute
2.4 Basic Command Syntax
2.4.1 Memory Modify Command
Syntax: E segment: offset
Purpose: This command is used to enter data to memory.
Example:
8086 > E 0000:1000
0000:1000 FF ? 11
0000:1001 FF ? 22
0000:1002 FF ? 33
0000:1003 FF ? 44
0000:1004 FF ? 55
0000:1005 FF ? / (Offset decrement)
0000:1004 55 ?
2.4.2 Memory Display Command
Syntax: D segment: offset
Purpose: This command is used to display the data stored in memory.
Example:
8086> D 0000:1000
0000:1000 11 22 33 44 55 FF FF FF - FF FF FF FF FF FF FF FF
0000:1020 FF FF FF FF FF FF FF FF - FF FF FF FF FF FF FF FF
2.4.3 Display Register Command
Syntax: R
Purpose: The R command is used to display the 8086 processor registers.
Example:
8086 > R
AX=0000 BX=0000 CX=0000 DX=0000
SP=0540 BP=0000 SI=0000 DI=0000
DS=0000 ES=0000 SS=0000 CS=0000
IP=1000 FL=0000 = ..........
2.4.4 To change individual register
8086 > R AX
AX = 0000 1234
8086 > R BX
BX = 0000 4567
8086 >R CX
CX = 0000 7788
8086 >R DX
DX =0000 1111
3 Example of Program Execution
1 ;The L command moves object data in hexa format from an external devices to
memory.
2 8086 > L
3 ;Download start !!
4 ;(Note : See section 5. Serial monitor experiment)
5 :14100000083412BB7856B90010BA00208BF08BFBBD0030BC08
6 :0910140000408EDASED18ECOCCB2
7 :00
8 ;OK Completed !!
9 ;Set IP
10 8086 > R IP
11 IP=1000
12 8086 > T
13 AX=1234 BX=4567 CX=7788 DX=1111
14 SP=0540 BP=0000 SI=0000 DI=0000
15 DS=0000 ES=0000 SS=0000 CS=0000
16 IP=1003 FL=0100 = ........t.......
17 ; IP= Next address
18 ;Execute program command
19
20 8086 > G 0000:1000 ;[segment:offset]
21 Execute Address = 0000:1000
4 Discussion & Conclusion
Based on the focused objective(s) to understand about MDA 8086 trainer Kit Commands in Serial Monitor
Mode, the additional lab exercise made me more confident towards the fulfilment of the objectives(s).
5 Lab Task (Please implement yourself and show the output to the
instructor)
1. Write an assembly language code and verify the value of different registers both in Machine Code Mode
and Serial Monitor Mode of MDA-8086 Kit.
(a) Write an Assembly Language Program using EMU8086 to transfer the following hexa-decimal values
to the specified registers:
AX = 4789 h, BX = AB9F h, CX = C25A h, DX = B21C h
Then, ADD the value of AX with BX and SUBTRACT the value of DX from CX. MOV the contents
from AX to BX and CX to DX. Then, make an AND operation using the updated contents of AX
and CX.
(b) Find the Machine Code of the corresponding Assembly Language Program using MASM (i.e., use
*.lstfile).
(c) Type the Machine code in the MDA 80x86 trainer kit using Serial Monitor Mode.
(d) Press STP (or T command) key and then GO (or G command) key, and verify the calculated value
of different registers both in Machine Code Mode and Serial Monitor Mode of MDA-8086 Kit.
6 Lab Exercise (Submit as a report)
1. Write an assembly language code and verify the value of different registers both in Machine Code Mode
and Serial Monitor Mode of MDA-8086 Kit.
(a) Write an Assembly Language Program using EMU8086 to transfer the following hexa-decimal values
to the specified registers:
AX = 4089 h, BX = AB8F h, CX = C55A h, DX = B62C h
Then, Multiply the value of AX with BX and Subtract the value of DX from CX. MOV the contents
from AX to BX and CX to DX. Then, make an OR operation using the updated contents of AX and
CX.
(b) Find the Machine Code of the corresponding Assembly Language Program using MASM (i.e., use
*.lstfile).
(c) Type the Machine code in the MDA 80x86 trainer kit using Serial Monitor Mode.
(d) Press STP (or T command) key and then GO (or G command) key, and verify the calculated value
of different registers both in Machine Code Mode and Serial Monitor Mode of MDA-8086 Kit.
7 Policy
Copying from internet, classmate, seniors, or from any other source is strongly prohibited. 100% marks will be
deducted if any such copying is detected.