Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;Molnar Daniel YNV3MS;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ; Digitális techinka II. házifeladat, 2. feladat. ;
- ;Processzor: 8085i ;
- ;Szubrutin : ELLENOR ;
- ;Bemenő paraméterek: -HL: kezdőcím ;
- ; -DE: hosszérték ;
- ;feladat:HL kezdőcímtől kezdődően, DE mennyiségű, a kezdő ;
- ;cím alsó nyolc bitjének egyel balra forgatott értékű adat ;
- ;memóriába írása, majd ezen folyamat helyes végbemenetelé ;
- ;nek ellenőrzése. ;
- ;Kimenő paraméterek: ;
- ;amennyiben nem találtunk hibát: ;
- ; -HL kezdőcím -DE hosszérték -BC=00 ;
- ;amennyiben találtunk hibát: ;
- ; -HL első hiba címe -DE hossz-BC=hibaszám ;
- ;a működéshez előírt regisztereken kívül más regiszterek értéke marad ua;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- MVI D,00000000b
- MVI E,00000010b
- MVI H,00000000b
- MVI L,00001000b
- PUSH PSW
- PUSH D
- PUSH H
- MOV B,D
- MOV C,E
- rotate: MOV A,L
- RLC
- MOV M,A
- MOV A,C
- CPI 00h
- JNZ decrease
- MOV A,B
- CPI 00h
- JNZ decrease
- JMP check
- decrease: DCX B
- INX H
- MOV A,C
- CPI 00h
- JNZ rotate
- MOV A,B
- CPI 00h
- JNZ rotate
- POP H
- PUSH H
- check:MOV A,L
- ;RLC
- CMP M
- JZ next
- MOV A,C
- CPI 00h
- JNZ bad
- MOV A,B
- CPI 00h
- JNZ bad
- XTHL
- POP H
- PUSH H
- bad: INX B
- next:INX H
- DCX D
- MOV A,E
- CPI 00h
- JNZ check
- MOV A,D
- CPI 00h
- JNZ check
- POP H
- POP D
- XTHL
- MOV A,C
- CPI 00h
- JNZ error
- MOV A,B
- CPI 00h
- JNZ error
- noerror: MOV A,L
- ORI 00000001b
- MOV L,A
- XTHL
- POP PSW
- RET
- error: MOV A,L
- ANI 11111110b
- MOV L,A
- XTHL
- POP PSW
- RET
Add Comment
Please, Sign In to add comment