Microprocessor Lab CSL 1543 0 0 2 Week
Microprocessor Lab CSL 1543 0: 0: 2 Week 3 : Searching
Binary search. model small. stack 200. data a dw 1111 h, 3333 h, 5555 h, 7777 h, 9999 h len dw ($-a)/2 key dw 2333 h msg 1 db 10, 13, 'successful search', '$' msg 2 db 10, 13, 'Unsuccessful search', '$' Department of CSE, MSRIT 2
Binary search. code mov ax, @data mov ds, ax mov ax, key mov si, 0 mov di, len dec di again: cmp si, di ja notfound ; Initialization of Data Segment ; ax = Search key ; si = low ; di = high Department of CSE, MSRIT ; low > high 3
Binary search mov bx, si add bx, di shr bx, 01 mov bp, bx shl bx, 01 cmp ax, a[bx] je found jc midbig Department of CSE, MSRIT ; bx = low + high ; bx = mid ; pointer adjustment ; Searching for key element ; key found at mid position 4
Binary search inc bp mov si, bp jmp again midbig: dec bp mov di, bp jmp again Department of CSE, MSRIT ; si(low) = mid + 1 ; di (high) = mid - 1 5
Binary search found: lea dx, msg 1 jmp exit notfound: lea dx, msg 2 exit: mov ah, 09 h int 21 h mov ah, 4 ch int 21 h end ; interrupt to display the ; message ; interrupt to end the ; program Department of CSE, MSRIT 6
Fibonacci series ASSUME CS: CODE, DS: DATA SEGMENT FIBO DB 10 DUP (? ) N DB 0 AH DATA ENDS CODE SEGMENT START: MOV AX, DATA MOV DS, AX Department of CSE, MSRIT 7
Fibonacci series LEA SI, FIBO MOV AL, 00 H MOV [SI], AL INC SI MOV BL, 01 H MOV [SI], BL INC SI MOV CL, N SUB CL, 2 MOV CH, 00 Department of CSE, MSRIT 8
Fibonacci series NEXT_NO: ADD AL, BL MOV [SI], AL INC SI XCHG AL, BL LOOP NEXT_NO MOV AH, 4 CH INT 21 H CODE ENDS END START Department of CSE, MSRIT 9
Department of CSE, MSRIT 10
- Slides: 10