Vous êtes sur la page 1sur 12

1.

Write a program for a byte/word data transfer using different addressing modes PROGRAM:
DATA SEGMENT N1 DB ? N2 DB ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,0FFH MOV BL,AL MOV N1,AL LEA SI,N2 MOV [SI],AL MOV 03H[SI],AL MOV BX,05H MOV [BX][SI],AL MOV 10H[BX][SI],AL INT 3H CODE ENDS END START

2.Write a program for a block move without overlap

PROGRAM:
DATA SEGMENT A1 DB 20H,30H,40H,50H,60H A2 DB 05 DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV CX,0005H LEA SI,A1 LEA DI,A2 L1:MOV AL,[SI] MOV [DI],AL INC SI INC DI LOOP L1 INT 3H CODE ENDS END START

3.Write a program for a block move with overlap PROGRAM:

DATA SEGMENT A1 DB 20H,30H,40H,50H,60H A2 DB 05 DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV CX,0005H INC CX LEA SI,A1 LEA DI,A2 L1:MOV AL,05H [SI] MOV 02H [DI],AL DEC SI DEC DI LOOP L1 INT 3H CODE ENDS END START

4.Write a program for interchange of data PROGRAM:


DATA SEGMENT

N1 DB 20H,30H,40H,50H,60H N2 DB 70H,80H,90H,1AH,2BH DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV CX,0005H LEA SI,N1 LEA DI,N2 L1:MOV AL,[SI] MOV AH,[DI] MOV [SI],AH MOV [DI],AL INC SI INC DI LOOP L1 INT 3H CODE ENDS END START

4.Write a program for addition of multi-precision numbers PROGRAM:


DATA SEGMENT N1 DB 0BH DUP(0),20H,30H,40H,50H,60H

N2 DB 0BH DUP(0),0FFH,80H,90H,1AH,2BH RS DB 0BH DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX CLC MOV CX,0FH MOV SI,0FH L1:MOV AL,N1[SI] MOV AH,N2[DI] ADC AL,AH MOV RS[SI],AL DEC SI LOOP L1 INT 3H CODE ENDS END START

5.Write a program for subtraction of multi-precision numbers PROGRAM:


DATA SEGMENT N1 DB 0BH DUP(0),20H,30H,40H,50H,60H N2 DB 0BH DUP(0),0FFH,80H,90H,1AH,2BH

RS DB 0BH DUP(0) DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX CLC MOV CX,0FH MOV SI,0FH L1:MOV AL,N1[SI] MOV AH,N2[DI] SBB AL,AH MOV RS[SI],AL DEC SI LOOP L1 INT 3H CODE ENDS END START

6.Write a program for multiplication of unsigned numbers PROGRAM:


DATA SEGMENT N1 DW 0030H N2 DW 6E80H DATA ENDS

CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,N1 MUL N2 INT 3H CODE ENDS END START

7.Write a program for multiplication of signed numbers PROGRAM:


DATA SEGMENT N1 DW 0030H N2 DW -6E80H DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,N1 IMUL N2 INT 3H CODE ENDS END START

12.Write a program for BINARY to packed BCD PROGRAM:


DATA SEGMENT A1 DB 054H TS DB ? UN DB ? DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AH,00H MOV AL,A1 MOV BL,064H DIV BL MOV TS,AL MOV AL,AH MOV AH,00H MOV BL,0AH DIV BL MOV CH.AH MOV CL,10H MUL CL ADD AL,CH MOV UN,AL INT 3H CODE ENDS END START

13.Write a program for SQUARE of a HEXA-DECIMAL number PROGRAM:


DATA SEGMENT A1 DB 054H RS DW ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA MOV DS,AX MOV AH,00H MOV AL,A1 MUL A1 XCHG AH,AL MOV RS,AX INT 3H CODE ENDS END START

14.Write a program for CUBE of HEXA-DECIMAL number PROGRAM:


DATA SEGMENT A1 DB 105H RS DD ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:

MOV AX,DATA MOV DS,AX MOV AX,A1 MUL A1 MOV BX,AX MOV AX,DX MUL A1 MOV CX,AX MOV AX,BX MUL A1 MOV BX,AX MOV AX,CX ADD AX,DX INT 3H CODE ENDS END START

17.Write a program for FACTORIAL of a number PROGRAM:


DATA SEGMENT A1 DW 0CH RS DD ? DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA

MOV DS,AX MOV CL,A1 MOV CH,00H MOV BX,0000H MOV DX,0000H MOV AX,0001H L1:MOV BX,AX MOV AX,DX MUL CX XCHG AX,BX MUL CX ADD DX,BX LOOP L1 INT 3H CODE ENDS END START

Vous aimerez peut-être aussi