KEMBAR78
Masm Program 11 | PDF | Filename | Subroutine
0% found this document useful (0 votes)
160 views22 pages

Masm Program 11

1. The document provides steps to program in assembly language using MASM on a PC, including opening the command window, changing directories to the MASM software, writing and editing programs, assembling, linking, debugging, and executing programs. 2. It also gives examples of assembly language programs for tasks like displaying a string, reading keyboard input, file manipulation including creation, renaming, deletion, and writing data to a file. 3. Additional examples include an addition program to demonstrate arithmetic operations.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
160 views22 pages

Masm Program 11

1. The document provides steps to program in assembly language using MASM on a PC, including opening the command window, changing directories to the MASM software, writing and editing programs, assembling, linking, debugging, and executing programs. 2. It also gives examples of assembly language programs for tasks like displaying a string, reading keyboard input, file manipulation including creation, renaming, deletion, and writing data to a file. 3. Additional examples include an addition program to demonstrate arithmetic operations.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

PC PROGRAMMING WITH ASSEMBLY LANGUAGE USING

MASM

Procedure:

1. Open command window (click:

start->run->type cmd )

2. Paste the 8086 or MASM software in any drive

3. In that window change the directry [Where you paste the masm software]

4.In the command window type the directory name after that change the directory to 8086(masm) after that type edit

5.After changing directory type edit then you get one window in that window you can write a program

6.After writing a program commond window] 7.Type : masm filename,,;

click: file->save->exit [again we enter the [This will display the error report]

8.Type: link filename,,; [This will create a list file you can see this inside the masm(8086)software] Note : Here we no need to use stack segment so no need to worry about stack error

8.Type :

debug filename.exe [to create exe file]

9.Type :

n filename.bin

[to create a bin file]

10.Type : wcs:1000

[writing code segment]

11.Type : g =1000

[to execute a program]

12. Type

u 1000[to see opcode]

13.Type : e 1200 to see next output value

[see output in corresponding address] use space bar

15.Type : q [terminate a line]

16. Down Loading procedure Note: dont use these command while down loading
Mov ah, 4ch Int 21h [These commands are used to see the results system itself]

( bin file is used to down loading ) Type: dc then you can get the following window

17. press f1 key and set the port settings

18.press esc key to abort 19.now in micro 86 kit select receiving mode(ie) type si 1000(starting address) then press enter key. Then the kit is ready to receive data and press any in the host to start transmission. During transmisson the message display as , transmission progress. Press esc to abort. Now binary files are downloaded to kit.

PROGRAMS: Write an alp to display a string manupulation in the monitor


Code segment Assume cs: code, ds: code Org 1000h Mov ah, 09h Mov dx, 1200h Int 21h Mov ah, 4ch Int 21h Org 1200h Db VI micro$ Code ends End ------------------------------------------------------------------------------------------------------------------

Write an alp to read scan code and character code from a keyboard control
Code segment Assume cs: code, ds: code Org 1000h Mov ah, 0h Int 16h Mov si, 1200h Mov [si], al Inc si Mov [si], ah Mov ah, 4ch Int 21h ends End

Code

-----------------------------------------------------------------------------------------

File manipulation: File creation


code segment assume cs:code,ds:code org 1000h mov ax,data mov ds,ax mov ah,3ch mov cx,0000h mov dx,1200h int 21h mov ah,4ch int 21h code ends data segment org 1200h db 'vi.asm' data ends end Write an alp to create a directory using dos calls

code segment assume cs:code,ds:data org 1000h mov ax,data mov ds,ax mov ah,39h mov dx,1200h int 21h mov ah,4ch int 21h code ends data segment org 1200h db 'man' data ends end

Create a file in a different directory:


code segment assume cs:code,ds:code org 1000h mov ax,data mov ds,ax mov ah,5bh mov dx,1200h mov cx,0 int 21h mov ah,4ch int 21h code ends data segment org 1200h db 'e:\man\v.asm' data ends end

File rename[Find and replace]


code segment assume cs:code,ds:data,es:data org 1000h mov ax,data mov ds,ax mov es,ax mov dx,1300h mov [di],1500h lea dx,oldname lea di,newname mov ah,56h int 21h mov ah,4ch int 21h code ends data segment org 1300h oldname db 'vi.txt' org 1500h

newname db 'service.txt' data ends end

File deletion
code segment assume cs:code,ds:code org 1000h mov ax,data mov ds,ax

mov ah,41h mov dx,1200h int 21h mov ah,4ch int 21h code ends data segment org 1200h db 'vi.asm' data ends end ---------------------------------------------------------------------------------------------------------

Write an alp to writing datas to a file


code segment assume cs:code,ds:data org 1000h mov ax,data mov ds,ax mov ah,3dh mov al,01h lea dx,filename int 21h mov si,1500h mov [si],ax mov ah,40h

lea dx,buffer mov cx,0050h mov bx,[si] int 21h mov ah,3eh int 21h mov ah,4ch int 21h code ends data segment org 1300h filename db 'vi.txt' org 1400h buffer db 'vimicro systems' data ends end

Addition:
code segment assume cs:code,ds:code org 1000h mov ax,1234h mov bx,1234h add ax,bx mov si,1200h mov [si],ax mov ah,4ch int 21h code ends end Result: e 1200=68

24

You might also like