Advertisement
Guest User

Untitled

a guest
Oct 18th, 2018
175
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. TODO:
  2. Do sprawdzenia:
  3. * przesunięcia, jak to ma wyglądać i ile tego ma być (kazde przesuniecie po 8 operacji czyli lacznie 24 instrukcje?) - CHYBA MAJĄ BYĆ PO 2 DLA KAZDEGO PRZESUNIECIA (LOGICZNE, CYKLICZNE, ARYTMENTYCZNE) I W OBIE STRONY (3 * 2) I JESZCZE DLA REJESTROW I PAMIECI CZYLI * 2 CZYLI MOZLIWE ZE LACZNIE MA BYC 3*2*2 INSTRUKCJI DO TYCH OPERACJI
  4. * jak pokazać w mikroinstrukcjach adresowanie bazowe z przemieszczeniem - CHYBA DOPISAĆ PO PROSTU NP. INSTRUKCJĘ MOV GDZIE PODAJEMY ADRES ROZUMIANY JAKO ADRES BAZOWY I PRZEMIESZCZENIE (coś w stylu: mov rej nat)
  5. * sprawdzić czy te funkcje call mają być w takiej formie jak zrobiłem i czy to ma być instrukcja o jednej nazwie (call) czy dwie różne i czy to, że można wywołać funkcję jako liczba to znaczy, że mamy odwołanie CS:[nat], a to że mamy do podanego jako rejestr, tzn, że: CS:[rej]? - CHYBA TAK, INNI MAJĄ PODOBNIE, PO PROSTU SĄ RÓŻNE GRUPY
  6. * mikroinstrukcje do przesunięcia cykliczne, arytmentyczne
  7. * czy te skoki mają być możliwe między offsetami? - CHYBA NIE
  8. * inkrementacja, dekrementacja - dopisać odpowiednie mikroinstrukcje
  9.  
  10. nop
  11. push rej
  12. pop rej
  13. mov rej nat
  14. mov rej rej
  15. mov rej DS:[rej]
  16. add rej nat
  17. add rej rej
  18. add rej DS:[rej]
  19. adc rej nat
  20. adc rej rej
  21. adc rej DS:[rej]
  22. sub rej nat
  23. sub rej rej
  24. sub rej DS:[rej]
  25. sbb rej nat
  26. sbb rej rej
  27. sbb rej DS:[rej]
  28. cmp rej nat
  29. cmp rej rej
  30. cmp rej DS:[rej]
  31. call CS:[nat] //nie ma pewności czy to i to niżej to mają być 2 różne instrukcje
  32. call CS:[rej]
  33. ret
  34. jmp CS:[nat]
  35. jg CS:[nat]
  36. jl CS:[nat]
  37. je CS:[nat]
  38. or rej nat
  39. and rej nat
  40. xor rej nat
  41. not rej
  42. //to co jest niżej jest chyba 2 razy za dużo, bo zrobiłem też dla flagi CF więc nie powinno być tego, ale powinno być jeszcze dla przesunięć logicznych i arytmetycznych (tu są tylko dla cyklicznych) - więcej opisałem w TODO
  43. ror rej nat
  44. ror DS:[rej] nat
  45. rcl rej nat
  46. rcl DS:[rej] nat
  47. ror rej nat
  48. ror DS:[rej] nat
  49. rcr rej nat
  50. rcr DS:[rej] nat
  51. mov DS:[rej] nat//bazowe z przemieszczeniem
  52. add DS:[rej]//inkrementacja
  53. //dekrementacja:
  54. Przykład wykorzystania rejestrów akumulatora do operacji arytmetycznych
  55.  
  56. MOV AH, 1              ; prześlij do rejestru AH liczbę 1
  57. MOV AL,AH             ; kopiuj AH do AL
  58. DEC AL                ; odejmij 1 (dekrementacja) od AL - AX ma wartość 1
  59. shr CS:[rej]//przesuniecie cykliczne
  60. shr CS:[nat]//przesuniecie arytmetyczne
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement