Programs for Assembly Language Programming
|
|
- Ashlynn Moody
- 6 years ago
- Views:
Transcription
1 ;Program to print lower case alphabets.stack 100 mov dl, 'a' mov cl, 26 print: mov ah, 02h inc dl loop print mov ah, 4ch Programs for Assembly Language Programming
2 ;Program to printf upper case alphabets.stack 100 mov dl, 'A' mov cl, 26 print: mov ah, 02h inc dl loop print mov ah, 4ch
3 ;Progrsm to add the numbers in an array blk1 db 01,02,03,04,05,06,07,08,09,0Ah count dw 0ah mov ax,0 mov si,offset blk1 mov cx,count cld l1: add al,[si] inc si dec count jnz l1 mov ch,02h mov cl,04h mov bl,al l2: rol bl,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4:add dl,30h mov ah,02 dec ch jnz l2
4 ;Program to find the average in an array.stack 100h blk1 db 01,02,03,04,05,06,07,08,09,0ah count dw 000ah mov ax,0 mov si,offset blk1 mov cx,count cld l1: add al,[si] inc si dec count jnz l1 mov ah,00 mov bl,0ah div bl mov ch,02h mov cl,04h mov bl,al l2: rol bl,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4:add dl,30h mov ah,02 dec ch jnz l2
5 ;Program to find maximum in an array.stack 100h array db 61h,05h,42h,05h,12h,15h,09h,14h,56h,38h max db 0 xor di,di mov cl,10 lea bx,array mov al,max back: cmp al,[bx+di] jnc skip mov dl,[bx+di] mov al,dl skip: inc di dec cl jnz back mov max,al mov ch,02h mov cl,04h mov bh,al again: rol bh,cl mov dl,bh and dl,0fh cmp dl,09 jbe smaller add dl,07 smaller: add dl,30h mov ah,02 dec ch jnz again
6 ;Program to print the digits.stack 100 mov dl, '0' mov cl, 10 print: mov ah, 02h inc dl loop print mov ah, 4ch
7 ;Program to print the fibonacci series count dw 0ch res db 10 dup(?) mov cx,count mov si,offset res mov al,00h mov bl,01h mov [si],al inc si mov [si],bl inc si up: mov al,[si-2] mov bl,[si-1] add al,bl mov [si],al inc si loop up mov si,offset res mov bp,15 up1: mov bl,[si] mov ch,02h mov cl,04h l2: rol bl,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4: add dl,30h mov ah,02 dec ch jnz l2 mov ah,02h mov dl,'' inc si dec bp jne up1
8 ;Program to display a string msg db 10,'Hello Ankit',10,'$' mov ah,09h lea dx,msg
9 ;Program to input a character and print it msg db 'Enter a character$' msg1 db '$' msg2 db 'Entered character is:$' mov ah,09h lea dx,msg mov ah,01h mov bl,al mov ah,09h lea dx,msg1 mov ah,09h lea dx,msg2 mov ah,02h mov dl,bl
10 ;Program to add two matrices.stack 100h mat1 db 10h,11h,12h,10h,11h,12h,10h,11h,12h mat2 db 02h,02h,02h,02h,02h,02h,02h,02h,02h res3 dw 9 dup(?) mov mov cx,09h mov di, offset mat1 mov bx,offset mat2 mov si,offset res3 back: mov ah,0 mov al,[di] add al,[bx] adc ah,00 mov [si],ax inc di inc bx inc si inc si loop back mov si,offset res3 mov dh,9 l10 : mov ch,04h mov cl,04h mov bx,[si] l2:rol bx,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4: add dl,30h mov ah,02 dec ch jnz l2 mov dl,'' inc si inc si dec dh jnz l10
11 ;Program to subtract two matrices.stack 100h mat1 db 10h,11h,12h,10h,11h,12h,10h,11h,12h mat2 db 02h,02h,02h,02h,02h,02h,02h,02h,02h res3 dw 9 dup(?) mov mov cx,09h mov di, offset mat1 mov bx,offset mat2 mov si,offset res3 back: mov ah,0 mov al,[di] sub al,[bx] sbb ah,00 mov [si],ax inc di inc bx inc si inc si loop back mov si,offset res3 mov dh,9 l10 : mov ch,04h mov cl,04h mov bx,[si] l2:rol bx,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4: add dl,30h mov ah,02 dec ch jnz l2 mov dl,'' inc si inc si dec dh jnz l10
12 ;Program to add two numbers (8-Bit) a db 08h b db 04h mov dl,a add dl,b add dl,30h mov ah,02h
13 ;Program to add two numbers(16-bit) a db 64h b db 64h mov al,a mov bl,b add al,bl mov ch,02h mov cl,04h mov bh,al again:rol bh,cl mov dl,bh and dl,0fh cmp dl,09 jbe smaller add dl,07 smaller:add dl,30h mov ah,02 dec ch jnz again end
14 ;Program to find the factorial (8-Bit) a db 05h mov al,a mov bl,al dec bl again1:mul bl dec bl cmp bl,01 jae again1 mov ch,02h mov cl,04h mov bh,al again:rol bh,cl mov dl,bh and dl,0fh cmp dl,09 jbe smaller add dl,07 smaller:add dl,30h mov ah,02 dec ch jnz again end
15 ;Program to find the factorial (16-Bit) a dw 09h mov ah,0 mov cx,a inc cx mov ax,1 mov bx,1 up:mul bx inc bx cmp bx,cx jne up mov di,ax mov bp,2 mov bx,dx up1:mov ch,04h mov cl,04h l2:rol bx,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4:add dl,30h mov ah,02 dec ch jnz l2 mov bx,di dec bp cmp bp,00 jnz up1
16 ;Program to find the factorial (Recursion).stack 100h num dw 08h mov ax,01 mov bx,num call fact mov di,ax mov bp,2 mov ax,dx up1:mov ch,04h mov cl,04h l2: rol bx,cl mov dl,bl and dl,0fh cmp dl,09 jbe l4 add dl,07 l4: add dl,30h mov ah,02 dec ch jnz l2 mov bx,di dec bp cmp bp,00 jnz up1 fact proc near cmp bx,01 jz l11 l12:mul bx dec bx cmp bx,01 jne l12 ret l11: mov ax,01 ret fact endp
17 ;Program to multiply two numbers (8-Bit) a db 02h b db 04h mov al,a mul b mov ah,02h add al,30h mov dl,al
18 ;Program to multiply two numbers (16-Bit) a db 12h b db 0fh mov al,a mov bl,b mul bl mov ch,02h mov cl,04h mov bh,al a12:rol bh,cl mov dl,bh and dl,0fh cmp dl,09 jbe b14 add dl,07 b14:add dl,30h mov ah,02h dec ch jnz a12 end
19 ;Program to find the square of a number (8-Bit) a db 03h mov al,a mul a mov ah,02h add al,30h mov dl,al
20 ;Program to find the square of a number (16-Bit) no db 13 mov cl,no mov al,no mul cl mov bx,00 p1:cmp al,64h jc p2 sub al,64h inc bl jmp p1 p2:cmp al,0ah jc p3 sub al,0ah inc bh jmp p2 p3: mov ah,02h add bl,30h mov dl,bl mov ah,02h add bh,30h mov dl,bh add cl,30h mov dl,al
21 ;Program to subtract two numbers (8-Bit) a db 06h b db 04h mov dl,a sub dl,b mov ah,02h add dl,30h
22 ;Program to subtract two numbers (16-Bit) a db 0dh b db 0ch mov al,a mov bl,b sub al,bl mov ch,02h mov cl,04h mov bh,al a12:rol bh,cl mov dl,bh and dl,0fh cmp dl,09 jbe b14 add dl,07 b14:add dl,30h mov ah,02 dec ch jnz a12 end
23 ;Program to verify the password.stack 100h pass db 'xyz' msg1 db 10,13,'Enter three char password$' msg2 db 10,13,'Welcome to programming$' msg3 db 10,13,'Invalid Password$' mov mov ah,09h lea dx,msg1 mov cl,00 mov dl,00h xor di,di up: cmp cl,3 je down mov ah,07h lea bx,pass mov ah,[bx+di] cmp al,ah jne l4 add dl,01 inc di l4:inc cl mov ah,02h mov dl,'*' jmp up down: cmp di,3 jne l2 mov ah,09h lea dx,msg2 jmp endd l2: mov ah,09h lea dx,msg3 endd:
24 ;Program to compare two strings PRINT MACRO MES MOV AH, 09H LEA DX, MES INT 21H ENDM.MODEL SMALL.DATA MS1 DB 10,13, "ENTER FIRST STRING:$" MS2 DB 10,13, "ENTER SECOND STRING:$" MS3 DB 10,13, "EQUAL STRINGS$" MS4 DB 10,13, "UNEQUAL STRINGS$" MS5 DB 10,13, "$" BUFF DB 25,?, 25 DUP('$') BUFF1 DB 25,?, 25 DUP('$').CODE mov mov es,ax print ms1 mov ah,0ah lea dx,buff lea si,buff print ms2 mov ah,0ah lea dx,buff1 mov cl,buff+1 mov ch,buff1+1 cmp ch,cl jnz para mov ch,00 mov cl,buff+1 lea di,buff1 cld repe cmpsb jnz para print ms3 jmp quit para: print ms4 quit:
25 ;String operations mess macro msg mov ah,09h lea dx,msg endm.stack 100h str1 db 25,?, 25 dup('$') str3 db 25,?, 25 dup('$') msg1 db 0ah,0dh,'menu $' msg21 db 0ah,0dh,'1.accept $' msg22 db 0ah,0dh,'2.length $' msg3 db 0ah,0dh,'enter your choice: $' msg4 db 0ah,0dh,'wrong choice $' msg5 db 0ah,0dh,'enter the string: $' msg6 db 0ah,0dh,'srting is: $' msg7 db 0ah,0dh,'length is: $' mov mov es,ax ak: mess msg1 mess msg21 mess msg22 mess msg3 mov ah,01h mov bl,al cmp bl,31h je acc cmp bl,32h je len cmp bl,33h je endd mess msg4 jmp ak acc: call accept jmp ak len: call lent endd: accept proc near mess msg5 mov ah,0ah lea dx,str1 ret accept endp lent proc near mess msg7 mov dl,str1+1 or dl,30h mov ah,02h
26 ret lent endp
27 ;String operations title string operations mess macro msg mov ah,09h lea dx,msg endm.stack 100h str1 db 25,?, 25 dup('$') str3 db 25,?, 25 dup('$') msg1 db 0ah,0dh,'menu $' msg21 db 0ah,0dh,'1.accept $' msg22 db 0ah,0dh,'2.length $' msg23 db 0ah,0dh,'3.reverse $' msg24 db 0ah,0dh,'4.palindrome $' msg25 db 0ah,0dh,'5.exit $' msg3 db 0ah,0dh,'enter your choice: $' msg4 db 0ah,0dh,'wrong choice $' msg5 db 0ah,0dh,'enter the string: $' msg6 db 0ah,0dh,'srting is: $' msg7 db 0ah,0dh,'length is: $' msg8 db 0ah,0dh,'the string is a palindrome $' msg9 db 0ah,0dh,'the string is not a palindrome $' mov mov es,ax ak: mess msg1 mess msg21 mess msg22 mess msg23 mess msg24 mess msg25 mess msg3 mov ah,01h mov bl,al cmp bl,31h je acc cmp bl,32h je len cmp bl,33h je rev cmp bl,34h je pal cmp bl,35h je endd mess msg4 jmp ak acc: call accept jmp ak len: call lent jmp ak
28 rev: call reverse jmp ak pal: call pall jmp ak endd: accept proc near mess msg5 mov ah,0ah lea dx,str1 ret accept endp lent proc near mess msg7 mov dl,str1+1 or dl,30h mov ah,02h ret lent endp reverse proc near mess msg6 mov ch,00h mov cl,str1+1 sub cl,01h lea si,str1+2 lea di,str1+2 repz movsb mov cl,str1+1 lea di,str3+2 loop1: mov dx,[si] mov ah,02h mov [di],dx dec si inc di dec cl cmp cl,00h jne loop1 ret reverse endp pall proc near mess msg6 mov ah,09h lea dx,str1+2 call reverse lea di,str3+2 mov ah,00h mov dh,00h lea si,str1+2 mov cl,str1+1 loop2: mov al,byte ptr[si] mov bl,byte ptr[di] dec cl cmp cl,00h
29 je loopa cmp al,bl je loop3 loopa: cmp cl,00h je loop4 mess msg9 jmp loop5 loop4: mess msg8 loop5: ret loop3: inc si inc di jmp loop2 pall endp Ankit Gupta
CONTENTS. 1. Display a Message Display a one Digit Number Accept a Character from keyboard and display the character 4
University of Kashmir, North Campus Course Code Course Name Course Instructor MCA-104-DCE Assembly Language Programming Bilal Ahmad Dar CONTENTS 1. Display a Message 2 2. Display a one Digit Number 3 3.
More information8086 Assembly Language Programming
of 28 7/6/2018 1:10 PM Tuesday, June 9, 2015 About Me 8086 Assembly Language Programming Assembly Language Programming is a low level programming language which is processor specific. It means it will
More informationWeek /8086 Microprocessor Programming II
Week 5 8088/8086 Microprocessor Programming II Quick Review Shift & Rotate C Target register or memory SHL/SAL 0 C SHR 0 SAR C Sign Bit 2 Examples Examples Ex. Ex. Ex. SHL dest, 1; SHL dest,cl; SHL dest,
More informationPESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of Electronics and Communication
USN 1 P E PESIT Bangalore South Campus Hosur road, 1km before Electronic City, Bengaluru -100 Department of Electronics and Communication INTERNAL ASSESSMENT TEST 1 Date : 26/02/2018 Marks: 40 Subject
More informationdb "Please enter up to 256 characters (press Enter Key to finish): ",0dh,0ah,'$'
PA4 Sample Solution.model large.stack 100h.data msg1 db "This programs scans a string of up to 256 bytes and counts the repetitions of the number 4206 and sums them.",0dh,0ah,'$' msg2 db "Please enter
More informationLecture (08) x86 programming 7
Lecture (08) x86 programming 7 By: Dr. Ahmed ElShafee 1 Conditional jump: Conditional jumps are executed only if the specified conditions are true. Usually the condition specified by a conditional jump
More informationQ1: Define a character string named CO_NAME containing "Internet Services" as a constant?
CS 321 Lab Model Answers ١ First Lab : Q1: Define a character string named CO_NAME containing "Internet Services" as a constant? ANS: CO_NAME EQU ' Internet Services' Q2: Define the following numeric values
More informationLecture (06) x86 programming 5
Lecture (06) x86 programming 5 By: Dr. Ahmed ElShafee 1 TOC Format of DOS programs Format of the.com programs Addressing Modes 1> Immediate Addressing Mode 2> Register Addressing Mode 3> Direct Addressing
More informationMicroprocessor(8086) Lab *
OpenStax-CNX module: m32857 1 Microprocessor(8086) Lab * Rajeshwari Hegde This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License 3.0 Abstract This module contains
More informationWeek /8086 Microprocessor Programming I
Week 4 8088/8086 Microprocessor Programming I Example. The PC Typewriter Write an 80x86 program to input keystrokes from the PC s keyboard and display the characters on the system monitor. Pressing any
More informationAssignment no:4 on chapter no :3 : Instruction set of 8086
Assignment no:4 on chapter no :3 : Instruction set of 8086 1) Describe any two string operation instruction of 8086 with syntax & one example of each. 1] REP: REP is a prefix which is written before one
More informationMICRPRPCESSOR LAB MANUAL
MICRPRPCESSOR LAB MANUAL VTU 4 TH SEMESTER COMPUTER SCIENCE ENGINEERING 1 PART A ;TO GENERATE FIBONACCI SERIES(11A) n dw 6 fib db 30 dup(?) mov ax,@data mov ds,ax lea si,fib mov [si],0 mov [si+1],1 mov
More informationSPRING TERM BM 310E MICROPROCESSORS LABORATORY PRELIMINARY STUDY
BACKGROUND Segment The "SEGMENT" and "ENDS" directives indicate to the assembler the beginning and ending of a segment and have the following format label SEGMENT [options] ;place the statements belonging
More informationSubmitted To. Submitted By. Department Of Computer Science And Engineering. Dr. Md. Rabiul Islam. Name: Ashadullah Shawon.
Department Of Computer Science And Engineering Submitted By Name: Ashadullah Shawon Class : 3 rd Year, Odd Semester Roll No: 133009 Subject: Solution of Exercise Problems Course Title: Microprocessor And
More informationEC 333 Microprocessor and Interfacing Techniques (3+1)
EC 333 Microprocessor and Interfacing Techniques (3+1) Lecture 6 8086/88 Microprocessor Programming (Arithmetic Instructions) Dr Hashim Ali Fall 2018 Department of Computer Science and Engineering HITEC
More information.code. lea dx,msg2. Page 1/8. Problem 1: Programming in Assembly [25 Points]
Problem : Programming in Assembly [ Points] The following assembly program is supposed to: receive three integer numbers from the console, call a function, name sort, function sort arranges the three input
More informationWeek /8086 Microprocessor Programming
Week 5 8088/8086 Microprocessor Programming Multiplication and Division Multiplication Multiplicant Operand Result (MUL or IMUL) (Multiplier) Byte * Byte AL Register or memory Word * Word AX Register or
More informationHands on Experience for Faculty in Laboratories Phase I JNTUK, Kakinada
Hands on Experience for Faculty in Laboratories Phase I JNTUK, Kakinada Cover page Report Details of College Name of the College College Code and District Name of the Principal Contact No s Lendi Institute
More informationEx: Write a piece of code that transfers a block of 256 bytes stored at locations starting at 34000H to locations starting at 36000H. Ans.
INSTRUCTOR: ABDULMUTTALIB A H ALDOURI Conditional Jump Cond Unsigned Signed = JE : Jump Equal JE : Jump Equal ZF = 1 JZ : Jump Zero JZ : Jump Zero ZF = 1 JNZ : Jump Not Zero JNZ : Jump Not Zero ZF = 0
More informationA4 Sample Solution Ch3
A4 Sample Solution Ch3 2. AL, AH, BL, BH,CL,CH,DLl, DH 3. AX, BX, CX, DX, SP, BP, SI, DI, CS, DS, ES, SS, FS, GS 4. EAX, EBX, ECX, EDX, ESP, EBP, EDI, ESI 5. RAX, RBX, RCX, RDX, RSP, RBP, RSI, RDI and
More informationCS-202 Microprocessor and Assembly Language
CS-202 Microprocessor and Assembly Language Lecture 2 Introduction to 8086 Assembly Language Dr Hashim Ali Spring - 2019 Department of Computer Science and Engineering HITEC University Taxila!1 Lecture
More informationQ1: Define a character string named CO_NAME containing "Internet Services" as a constant?
CS 321 Lab Model Answers ١ First Lab : Q1: Define a character string named CO_NAME containing "Internet Services" as a constant? ANS: CO_NAME EQU ' Internet Services' Q2: Define the following numeric values
More informationBLDEA S V.P. DR. P.G. HALAKATTI COLLEGE OF ENGINEERING & TECHNOLOGY, VIJAYAPURA
EXPERIMENT NO.:- 1. BINARY SEARCH Work Space: Register Used Memory Address Data DI 10000H 11H 10001H 11H 10002H 22H 10003H 22H BX 10004H 33H 10005H 33H 10006H 44H 10007H 44H CX 10008H 55H 10009H 55H 24
More informationINSTRUCTOR: ABDULMUTTALIB A. H. ALDOURI
Note: PUSHF / POPF have no operands The figure below shows that if (SS) = 3000H, (SP) = 0042H, so the execution of POP CX loads CX by the word 4050H form the stack segment. The SP is incremented by 2.
More information8086 INSTRUCTION SET
8086 INSTRUCTION SET Complete 8086 instruction set Quick reference: AAA AAD AAM AAS ADC ADD AND CALL CBW CLC CLD CLI CMC CMP CMPSB CMPSW CWD DAA DAS DEC DIV HLT IDIV IMUL IN INC INT INTO I JA JAE JB JBE
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Non maskable interrupts are TRAP
Subject Code: 17431 Model Answer Page 1/ 23 Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer scheme. 2) The model
More informationSummer 2003 Lecture 15 07/03/03
Summer 2003 Lecture 15 07/03/03 Initialization of Variables In the C (or C++) programming language any variable definition can have an optional initializer for the variable. How and when the initialization
More information5. Using Signed Numbers and Look-up Tables
5. Using Signed Numbers and Look-up Tables Macro Library for BIOS and DOS Services (save as exp5.inc) ; ASCII code for carriage return CR equ 0Dh ; ASCII code for line feed LF equ 0Ah al2asc macro buffer
More informationCOE 205 Lab Manual Experiment N o 12. Experiment N o Using the Mouse
Experiment N o 12 12 Using the Mouse Introduction The mouse is an I/O device that replaces the arrow keys on the keyboard for graphical and text style programs. This experiment shows how to add the mouse
More informationKingdom of Saudi Arabia Ministry of Higher Education. Taif University. Faculty of Computers & Information Systems
Kingdom of Saudi Arabia Ministry of Higher Education Taif University Faculty of Computers & Information Systems المملكة العربية السعودية وزارة التعليم العالي جامعة الطاي ف آلية الحاسبات ونظم المعلومات
More informationMICROPROCESSORS LABORATORY
(Common to CSE & ISE) Subject Code : 10CSL48 I.A. Marks : 25 Hours/Week : 03 Exam Hours: 03 Total Hours : 42 Exam Marks: 50 Notes: Develop and execute the following programs using 8086 Assembly Language.
More informationAssembling, Linking and Executing 1) Assembling: .obj obj .obj.lst .crf Assembler Types: a) One pass assembler:
Assembling, Linking and Executing 1) Assembling: - Assembling converts source program into object program if syntactically correct and generates an intermediate.obj file or module. - It calculates the
More informationLecture 16: Passing Parameters on the Stack. Push Examples. Pop Examples. CALL and RET
Lecture 1: Passing Parameters on the Stack Push Examples Quick Stack Review Passing Parameters on the Stack Binary/ASCII conversion ;assume SP = 0202 mov ax, 124h push ax push 0af8h push 0eeeh EE 0E F8
More informationLecture (07) x86 programming 6
Lecture (07) x86 programming 6 By: Dr. Ahmed ElShafee 1 The Flag Register 31 21 20 19 18 17 16 14 13 12 11 10 9 8 7 6 4 2 0 ID VIP VIF AC VM RF NT IOP 1 IOP 0 O D I T S Z A P C 8088/8086 80286 80386 80486
More informationDEPARTMENT OF ELECTRONICS & COMMUNICATION ENGINEERING. Year & Sem : II & III. Name of the Subject: MC-9238 Microprocessor Lab Branch : MCA
DEPARTMENT OF ELECTRONICS & COMMUNICATION ENGINEERING Year & Sem : II & III Name of the Subject: MC-9238 Microprocessor Lab Branch : MCA HOW TO WORK IN 8086: Press asm twice. Type sg 0000 Press enter Type
More informationAssembly Language Lab #5
Islamic University of Gaza Computer Engineering Department 2009 Assembly Language Lab #5 Eng. Tahani Z. Fourah Islamic University of Gaza Lab 5 Addressing Modes The addressing modes are different ways
More informationMICROPROCESSORS & INTERFACING DEVICES (III B.Tech. - II Sem.)
DEPARTMENT OF ELECTRONICS & COMMUNICATION ENGINEERING LABORATORY MANUAL FOR MICROPROCESSORS & INTERFACING DEVICES (III B.Tech. - II Sem.) BALAJI INSTITUTE OF TECHNOLOGY &SCIENCE Laknepally, Narsampet,
More informationADVANCED MICROPROCESSOR LAB
ADVANCED MICROPROCESSOR LAB (06ECL68) Lab Manual By Naveen.H Department of Electronics and Communication M.S.Engineering College Bangalore-562110 1 SYALLABUS Programs involving 1) Data transfer instructions
More informationMOV CX,80 MOV CX,100. For example, MOV DI, OFFSET TEXT_STRING ;DI points to the TEXT_STRING in the extra segment ; Byte to be scanned in AL
Q1. Explain briefly the following instructions with examples. (a) IDIV (b)imul (c) SAR (d) SAL (a) IDIV: This instruction is used to divide a signed word by assigned byte, or to divide signed doubleword
More informationVideo processing The INT instruction enables program to interrupt its own processing. Use INT instruction to handle inputs and outputs
Video processing The INT instruction enables program to interrupt its own processing. Use INT instruction to handle inputs and outputs INT 10H: screen handling INT 21H: for displaying screen output and
More informationPRACTICE 4: Machine and assembly languages
Practice 4: Page: 2 / 10 PRACTICE 4: Objectives: When finishing this practice, students are able to relate machine and assembly languages, changing from one to another and knowing addressing modes and
More informationBabu Madhav Institute of Information Technology, UTU
5 Years Integrated M.Sc.(IT) Semester 4 060010309 : DSE3 Microprocessor Programming and Interfacing Question Bank 1. Write an assembly language program to check whether the given number is odd or even.
More informationExperiment N o 8. String Handling Instructions
Experiment N o 8 String Handling Instructions Introduction: In this experiment you will deal with string handling instructions, such as reading a string, moving a string from one memory location to another,
More informationOverview: 1. Overview: 2
1: TITLE Binary equivalent of characters BINCHAR.ASM 3: Objective: To print the binary equivalent of 4: ASCII character code. 5: Input: Requests a character from keyboard. 6: Output: Prints the ASCII code
More informationMr. Sapan Naik 1. Babu Madhav Institute of Information Technology, UTU
5 Years Integrated M.Sc.(IT) Semester 4 060010402 System Programming Question Bank Unit 1: Introduction 1. Write the decimal equivalent for each integral power of 2 from 2! to 2!". 2. Convert the following
More informationEEM336 Microprocessors I. Data Movement Instructions
EEM336 Microprocessors I Data Movement Instructions Introduction This chapter concentrates on common data movement instructions. 2 Chapter Objectives Upon completion of this chapter, you will be able to:
More informationSri Krishna Engineering College Panapakkam, Chennai 601 301 Lab Manual CS2259 MICROPROCESSORS LAB Department of Electronics and Communication Engineering CS 2259 Microprocessors Lab SKEC Page 1 List of
More informationDEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING LAB MANUAL. Academic Year: ODD SEMESTER
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING LAB MANUAL Academic Year: 2015-16 ODD SEMESTER Programme (UG/PG) : UG-B.Tech Semester : 03 Course Code Course Title :CS1033 : MICROPROCESSOR & INTERFACING
More information8086 Programming. Multiplication Instructions. Multiplication can be performed on signed and unsigned numbers.
Multiplication Instructions 8086 Programming Multiplication can be performed on signed and unsigned numbers. MUL IMUL source source x AL source x AX source AX DX AX The source operand can be a memory location
More informationMODEL ANSWER SUMMER 17 EXAMINATION 17431
MODEL ANSWER SUMMER 17 EXAMINATION 17431 Subject Title: Microprocessor and Programming. Subject Code: Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word
More informationArithmetic Instructions
Segment 3C Arithmetic Instructions This topic covers the following instructions: Addition (ADD, INC, ADC) Subtraction (SUB, DEC, SBB,CMP) Multiplication (MUL, IMUL) Division (DIV, IDIV) BCD Arithmetic
More informationSummer 2003 Lecture 4 06/14/03
Summer 2003 Lecture 4 06/14/03 LDS/LES/LSS General forms: lds reg,mem lseg reg,mem Load far pointer ~~ outside of current segment {E.g., load reg w/value @ mem, & seg w/mem+2 XCHG Exchange values General
More informationADVANCE MICROPROCESSOR & INTERFACING
VENUS INTERNATIONAL COLLEGE OF TECHNOLOGY Gandhinagar Department of Computer Enggineering ADVANCE MICROPROCESSOR & INTERFACING Name : Enroll no. : Class Year : 2014-15 : 5 th SEM C.E. VENUS INTERNATIONAL
More informationCS/ECE/EEE/INSTR F241 MICROPROCESSOR PROGRAMMING & INTERFACING MODULE 4: 80X86 INSTRUCTION SET QUESTIONS ANUPAMA KR BITS, PILANI KK BIRLA GOA CAMPUS
CS/ECE/EEE/INSTR F241 MICROPROCESSOR PROGRAMMING & INTERFACING MODULE 4: 80X86 INSTRUCTION SET QUESTIONS ANUPAMA KR BITS, PILANI KK BIRLA GOA CAMPUS Q1. IWrite an ALP that will examine a set of 20 memory
More information8086 Programming ADD BX,245FH BX BX + 245FH ADD [BX],AL [DS:BX] [DS:BX] + AL ADD CL,[BP] CL CL + [SS:BP] ADD BX,[SI + 2] BX BX + [DS:(SI + 3:SI + 2)]
Addition Instruction 8086 Programming The table illustrates the addressing modes available to the ADD instruction. These addressing modes include almost all addressing modes. The only types of addition
More informationExperiment #2. Addressing Modes and Data Transfer using TASM
2.0 Objective Experiment #2 Addressing Modes and Data Transfer using TASM The objective of this experiment is to learn various addressing modes and to verify the actions of data transfer. 2.1 Introduction
More informationArithmetic and Logic Instructions And Programs
Dec Hex Bin 3 3 00000011 ORG ; FOUR Arithmetic and Logic Instructions And Programs OBJECTIVES this chapter enables the student to: Demonstrate how 8-bit and 16-bit unsigned numbers are added in the x86.
More informationSheet 1 solution A) 1)
Sheet 1 solution A) 1) 8086 8088 15 lines D o ---D 15 8 lines D o -----D 7 Can address 1 word or 1 byte of data Can address 1 byte of data To transfer 16 bits from/to memory it needs 1 operation. To transfer
More informationEXPERIMENT WRITE UP. LEARNING OBJECTIVES: 1. Get hands on experience with Assembly Language Programming 2. Write and debug programs in TASM/MASM
EXPERIMENT WRITE UP AIM: Assembly language program to search a number in given array. LEARNING OBJECTIVES: 1. Get hands on experience with Assembly Language Programming 2. Write and debug programs in TASM/MASM
More informationSPRING TERM BM 310E MICROPROCESSORS LABORATORY PRELIMINARY STUDY
BACKGROUND 8086 CPU has 8 general purpose registers listed below: AX - the accumulator register (divided into AH / AL): 1. Generates shortest machine code 2. Arithmetic, logic and data transfer 3. One
More informationExperiment #5. Using BIOS Services and DOS functions Part 1: Text-based Graphics
Experiment #5 Using BIOS Services and DOS functions Part 1: Text-based Graphics 5.0 Objectives: The objective of this experiment is to introduce BIOS and DOS interrupt service routines to be utilized in
More informationCOMPUTER ENGINEERING DEPARTMENT
Page 1 of 11 COMPUTER ENGINEERING DEPARTMENT December 31, 2007 COE 205 COMPUTER ORGANIZATION & ASSEMBLY PROGRAMMING Major Exam II First Semester (071) Time: 7:00 PM-9:30 PM Student Name : KEY Student ID.
More informationICAL EN LAB MANUAL CS MICROPROCESSOR AND MICROCONTROLLER LABORATORY. Regulation. Branch. Year & Semester. Dharmapuri : B.E. CSE.
Dharmapuri 636 703 LAB MANUAL Regulation : 203 Branch : B.E. CSE. Year & Semester : II Year / IV Semester CS 642 - MICROPROCESSOR AND MICROCONTROLLER LABORATORY ICAL EN 2 ANNA UNIVERSITY CHENNAI Regulation
More informationPESIT Bangalore South Campus
INTERNAL ASSESSMENT TEST 2 Date : 02/04/2018 Max Marks: 40 Subject & Code : Microprocessor (15CS44) Section : IV A and B Name of faculty: Deepti.C Time : 8:30 am-10:00 am Note: Note: Answer any five complete
More informationWINTER 17 EXAMINATION
Subject Name: Microprocessor and Programming Model Answer Sub Code: Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in the model answer
More information;Propeller Console IO S-100 board or SD SYSTEMS VIDIO BOARD FOR CONSOLE I/O(<---These must configured for your hardware)
; ; Test Program to interact with LAVA-10 VGA Board.. John Monahan ;============================================================================== ; ; V0.1 4/27/2012 ;Initial Program ; V1.3 5/5/2012 ;Modified
More informationExperiment 3 3 Basic Input Output
Experiment 3 3 Basic Input Output Introduction The aim of this experiment is to introduce the use of input/output through the DOS interrupt. Objectives: INT Instruction Keyboard access using DOS function
More informationWe will first study the basic instructions for doing multiplications and divisions
MULTIPLICATION, DIVISION AND NUMERICAL CONVERSIONS We will first study the basic instructions for doing multiplications and divisions We then use these instructions to 1. Convert a string of ASCII digits
More informationTUTORIAL. Emulador Emu8086 do. Microprocessador 8086
1 TUTORIAL Emulador Emu8086 do Microprocessador 8086 2 8086 Assembler Tutorial for Beginners (Part 1) This tutorial is intended for those who are not familiar with assembler at all, or have a very distant
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified) Subject Name: Microprocessor & Programming
Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in The model answer scheme. 2) The model answer and the answer written by candidate
More informationECOM Computer Organization and Assembly Language. Computer Engineering Department CHAPTER 7. Integer Arithmetic
ECOM 2325 Computer Organization and Assembly Language Computer Engineering Department CHAPTER 7 Integer Arithmetic Presentation Outline Shift and Rotate Instructions Shift and Rotate Applications Multiplication
More information1: /********************************************************** 2: * A
1: /********************************************************** 2: * A simple example to illustrate C and assembly language * 3: * interface. The test function is written in assembly * 4: * language (in
More informationSHEET-2 ANSWERS. [1] Rewrite Program 2-3 to transfer one word at a time instead of one byte.
SHEET-2 ANSWERS [1] Rewrite Program 2-3 to transfer one word at a time instead of one byte. TITLE PROG2-3 PURPOSE: TRANSFER 6 WORDS OF DATA PAGE 60,132.MODEL SMALL.STACK 64.DATA ORG 10H DATA_IN DW 234DH,
More informationIntel 8086: Instruction Set
IUST-EE (Chapter 6) Intel 8086: Instruction Set 1 Outline Instruction Set Data Transfer Instructions Arithmetic Instructions Bit Manipulation Instructions String Instructions Unconditional Transfer Instruction
More informationAssembly Language LAB
Assembly Language LAB Islamic University Gaza Engineering Faculty Department of Computer Engineering 2013 ECOM 2125: Assembly Language LAB Created by: Eng. Ahmed M. Ayash Modified and Presented By: Eihab
More informationEXPERIMENT TWELVE: USING DISK FILES
EXPERIMENT TWELVE: USING DISK FILES INTRODUCTION Because just about any program ever written requires the use of a disk file to store or retrieve data, this experiment shows how to create, read, write,
More informationMAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION (Autonomous) (ISO/IEC Certified)
MODEL ANSWER SUMMER 18 EXAMINATION Subject Title:MICROPROCESSOR AND PROGRAMMING Subject Code: 17431 Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word
More informationMICROPROCESSORS & MICROCONTROLLERS Laboratory (EC 362) Manual
MICROPROCESSORS & MICROCONTROLLERS Laboratory (EC 362) Manual Prepared by A.M.V.N. MARUTHI, M.Tech (Lecturer) & Y.SRI CHAKRAPANI, M.Tech (Lecturer) DEPARTMENT OF ECE BAPATLA ENGINEERING COLLEGE BAPATLA
More informationCertified Ethical Hacker. Module 25 Writing Virus Codes
Certified Ethical Hacker Module 25 Writing Virus Codes Module Objective This module will familiarize you with the following: Introduction of viruses Prerequisites for virus writing Tools required for virus
More informationPESIT Bangalore South Campus
INTERNAL ASSESSMENT TEST 2 Date : 28/03/2016 Max Marks: 50 Subject & Code : Microprocessor (10CS45) Section: IV A and B Name of faculty: Deepti.C Time: 8:30-10:00 am Note: Answer any complete five questions
More informationFACULTY OF ENGINEERING LAB SHEET
FACULTY OF ENGINEERING LAB SHEET ECE366: ADVANCED MICROPROCESSORS TRIMESTER (08/09) AM: Real- Mode Programming *Note: On-the-spot evaluation may be carried out during or at the end of the experiment. Students
More informationUNIT 4. Modular Programming
1 UNIT 4. Modular Programming Program is composed from several smaller modules. Modules could be developed by separate teams concurrently. The modules are only assembled producing.obj modules (Object modules).
More information22 Assembly Language for Intel-Based Computers, 4th Edition. 3. Each edge is a transition from one state to another, caused by some input.
22 Assembly Language for Intel-Based Computers, 4th Edition 6.6 Application: Finite-State Machines 1. A directed graph (also known as a diagraph). 2. Each node is a state. 3. Each edge is a transition
More information1. Microprocessor kit Key board 1 3 Power Supply +5 V dc 1
EXPT : DATE: SORTING AND SEARCHING OPERATIONS IN 8086 MICROPROCESSOR AIM: To write an Assembly Language Program (ALP) to sort a given array in ascending and descending order. APPARATUS REQUIRED: SL.N ITEM
More information1 (A) Attempt any SIX of the following: 12- Total Marks. (a) List any four salient features of 8085 microprocessor. 2M
1 Important Instructions to examiners: 1) The answers should be examined by key words and not as word-to-word as given in themodel answer scheme. 2) The model answer and the answer written by candidate
More informationINDEX EXPT.NO NAME OF THE EXPERIMENT PAGE NO 1 Basic arithmetic and Logical operations 3 2 Move a Data Block Without Overlap 10 3 Code conversion, decimal arithmetic and Matrix operations. 4 Floating point
More informationProgramming in Assembler. Laboratory manual. Exercise 3
Zakład Mikroinformatyki i Teorii Automatów Cyfrowych Programming in Assembler Laboratory manual Exercise 3 Simple MS-DOS program assembling and debugging 2008,2011 Krzysztof Tokarz, Piotr Czekalski (edt.)
More informationMidterm Exam #2 Answer Key
Midterm Exam #2 Answer Key Name: Student ID #: I have read and understand Washington State University s policy on academic dishonesty and cheating YOU Signed: Problem 1) Consider the following fragment
More informationCSCI516: Program 1 - October 11, 2010 The Program is due: October 25, 2010 in the beginning of the class
CSCI516: Program 1 - October 11, 2010 The Program is due: October 25, 2010 in the beginning of the class For Late Submissions 10 out of 100 points will be taken off. For your first program, you are to
More informationBAHAR DÖNEMİ MİKROİŞLEMCİLER LAB4 FÖYÜ
LAB4 RELATED INSTRUCTIONS: Compare, division and jump instructions CMP REG, memory memory, REG REG, REG memory, immediate REG, immediate operand1 - operand2 Result is not stored anywhere, flags are set
More informationUnit INSTRUCTION SET & ASSEMBLY LANGUAGE PROGRAMMING
Unit 3 8086 INSTRUCTION SET & ASSEMBLY LANGUAGE PROGRAMMING -Addressing modes - Instruction set - Data transfer instructions - String instructions -Logical Instructions -Arithmetic Instructions - Transfer
More informationThe registers(di,si) are automatically incremented or decremented depending on the value of the direction flag:
String Instructions String instructions were designed to operate on large data structures. The SI and DI registers are used as pointers to the data structures being accessed or manipulated. The operation
More informationLABORATORY WORK NO. 8 WORKING WITH MACROS AND LIBRARIES
LABORATORY WORK NO. 8 WORKING WITH MACROS AND LIBRARIES 1. Object of laboratory Getting used to defining and using macros, procedure defining and using LIB library librarian. 2. Theoretical considerations
More informationComputer Department Chapter 7. Created By: Eng. Ahmed M. Ayash Modified and Presented by: Eng. Eihab S. El-Radie. Chapter 7
Islamic University Of Gaza Assembly Language Faculty of Engineering Discussion Computer Department Chapter 7 Created By: Eng. Ahmed M. Ayash Modified and Presented by: Eng. Eihab S. El-Radie Chapter 7
More informationELEC VIDEO BIOS ROUTINES
It is less confusing to the user if we remove unnecessary messages from the display before giving information or instructions. At the command prompt, we do this with the DOS command CLS. However, this
More information10ECL68. Formulated by Prof. Mallikarjuna GS Assoc. Prof. Dept. of Electronics and Communication Engg. City Engineering College.
0ECL68 Formulated by Prof. Mallikarjuna GS Assoc. Prof. Dept. of Electronics and Communication Engg. City Engineering College. MICROPROCESSOR LAB Subject Code : 0ECL68 IA Marks : 5 No. of Practical Hrs/Week
More informationTopics Introduction to Microprocessors. Chapter 5 Macros and modules. What is macro? How to use macro? (I) How to use macro?
Topics 2102440 Introduction to Microprocessors Macros Subroutines Modules Chapter 5 Macros and modules Suree Pumrin,, Ph.D. 1 2102440 Introduction to Microprocessors 2 What is macro? It is used to automate
More informationMemory Organization. 27 December 2016 Pramod Ghimire. Slide 1 of 21
Memory Organization Slide 1 of 21 The assembler uses two basic formats for developing software. One method uses memory models and the other uses fullsegment definitions. MASM uses memory models. The TASM
More informationMarking Scheme. Examination Paper Department of CE. Module: Microprocessors (630313)
Philadelphia University Faculty of Engineering Marking Scheme Examination Paper Department of CE Module: Microprocessors (630313) Final Exam Second Semester Date: 02/06/2018 Section 1 Weighting 40% of
More informationIt is possible to define a number using a character or multiple numbers (see instruction DB) by using a string.
1 od 5 17. 12. 2017 23:53 (https://github.com/schweigi/assembler-simulator) Introduction This simulator provides a simplified assembler syntax (based on NASM (http://www.nasm.us)) and is simulating a x86
More information