Bu sayfadaki yazılar
Sayfanın metni
Sayfa 35
DERLEYİCİLER
MOVE d(Ax,Dx),$yy.W / MOVE $xx.W,$yy.W MOVE $xxxx.L,$yy.W / MOVE d(PC),$yy.W MOVE d(PC,Dx),$yy.W / MOVE #xxxx,$yy.W Açıklama: Source'un içeriğini destination adresine yazar. Destination adresi word sınırını geçmemelidir ($0000-$ffff).
Etkilenen flaglar: -**00 . Adresleme şekillerine göre harcadığı süre: MOVE Dx,$yy.W = 12 CLCK, 12 CLCK, 16 CLCK MOVE Ax,$yy.W = ------ , 12 CLCK, 16 CLCK MOVE (Ax),$yy.W = 16 CLCK, 16 CLCK, 24 CLCK MOVE (Ax)+,$yy.W = 16 CLCK, 16 CLCK, 24 CLCK MOVE -(Ax),$yy.W = 18 CLCK, 18 CLCK, 26 CLCK MOVE d(Ax),$yy.W = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(Ax,Dx),$yy.W = 22 CLCK, 22 CLCK, 30 CLCK MOVE $xx.W,$yy.W = 20 CLCK, 20 CLCK, 28 CLCK MOVE $xxxx.L,$yy.W = 24 CLCK, 24 CLCK, 32 CLCK MOVE d(PC),$yy.W = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(PC,Dx),$yy.W = 22 CLCK, 22 CLCK, 30 CLCK MOVE #xxxx,$yy.W = 16 CLCK, 16 CLCK, 24 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,$yyyy.L / MOVE Ax,$yyyy.L MOVE (Ax),$yyyy.L / MOVE (Ax)+,$yyyy.L MOVE -(Ax),$yyyy.L / MOVE d(Ax),$yyyy.L MOVE d(Ax,Dx),$yyyy.L / MOVE $xx.W,$yyyy.L MOVE $xxxx.L,$yyyy.L / MOVE d(PC),$yyyy.L MOVE d(PC,Dx),$yyyy.L / MOVE #xxxx,$yyyy.L Açıklama: Source içeriğini destination adresine yazar. Burada destination adresi longword genişliğinde olabilir ($00000000- $ffffffff).
Etkilenen flaglar: -**00 Adresleme şekillerine göre harcadığı süre: MOVE Dx,$yyyy.L = 16 CLCK, 16 CLCK, 20 CLCK MOVE Ax,$yyyy.L = -------, 16 CLCK, 20 CLCK MOVE (Ax),$yyyy.L = 20 CLCK, 20 CLCK, 28 CLCK MOVE (Ax)+,$yyyy.L = 20 CLCK, 20 CLCK, 28 CLCK MOVE -(Ax),$yyyy.L = 22 CLCK, 22 CLCK, 30 CLCK
MOVE d(Ax),$yyyy.L = 24 CLCK, 24 CLCK, 32 CLCK MOVE d(Ax,Dx),$yyyy.L = 26 CLCK, 26 CLCK, 34 CLCK MOVE $xx.W,$yyyy.L = 24 CLCK, 24 CLCK, 32 CLCK MOVE $xxxx.L,$yyyy.L = 28 CLCK, 28 CLCK, 36 CLCK MOVE d(PC),$yyyy.L = 24 CLCK, 24 CLCK, 32 CLCK MOVE d(PC,Dx),$yyyy.L = 26 CLCK, 26 CLCK, 34 CLCK MOVE #xxxx,$yyyy.L = 20 CLCK, 20 CLCK, 28 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,CCR / MOVE (Ax),CCR MOVE (Ax)+,CCR / MOVE -(Ax),CCR / MOVE d(Ax),CCR MOVE d(Ax,Dx),CCR / MOVE $xx.W,CCR MOVE $xxxx.L,CCR / MOVE d(PC),CCR MOVE d(PC,Dx),CCR / MOVE #xxxx,CCR Açıklama: Source içeriğini statü register'ına yazar. Statü register'ı çeşitli flag'ların olduğu register'dır.
Etkilenen flaglar: ***** Adresleme şekillerine göre harcadığı süre: Bu komut sadece word genişliğinde çalışabilir, zira statü register'ı 1 word genişliğindedir.
MOVE Dx,CCR = 12 CLCK MOVE (Ax),CCR = 16 CLCK MOVE (Ax)+,CCR = 16 CLCK MOVE -(Ax),CCR = 18 CLCK MOVE d(Ax),CCR = 20 CLCK MOVE d(Ax,Dx),CCR = 22 CLCK MOVE $xx.W,CCR = 20 CLCK MOVE $xxxx.L,CCR = 24 CLCK MOVE d(PC),CCR = 20 CLCK MOVE d(PC,Dx),CCR = 22 CLCK MOVE #xxxx,CCR = 16 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,SR / MOVE (Ax),SR MOVE (Ax)+,SR / MOVE -(Ax),SR / MOVE d(Ax),SR MOVE d(Ax,Dx),SR / MOVE $xx.W,SR / MOVE $xxxx.L,SR MOVE d(PC),SR / MOVE d(PC,Dx),SR / MOVE #xxxx,SR Açıklama: Source içeriğini statü register'ına yazar. Statü register'ı çeşitli flag'lerin olduğu register'dır. CCR'den farkı, bu komutun sadece Supervisor modunda kullanılması gerektiğidir. Komutu Supervisor moduna girmeden kullanırsanız, bilgisayar crash eder.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 34
MOVE Ax,Dy = ------ , 4 CLCK, 4 CLCK MOVE (Ax),Dy = 8 CLCK, 8 CLCK, 12 CLCK MOVE (Ax)+,Dy = 8 CLCK, 8 CLCK, 12 CLCK MOVE -(Ax),Dy = 10 CLCK, 10 CLCK, 14 CLCK MOVE d(Ax),Dy = 12 CLCK, 12 CLCK, 14 CLCK MOVE d(Ax,Dx),Dy = 14 CLCK, 14 CLCK, 18 CLCK MOVE $xx.W,Dy = 12 CLCK, 12 CLCK, 16 CLCK MOVE $xxxx.L,Dy = 16 CLCK, 16 CLCK, 20 CLCK MOVE d(PC),Dy = 12 CLCK, 12 CLCK, 16 CLCK MOVE d(PC,Dx),Dy = 14 CLCK, 14 CLCK, 18 CLCK MOVE #xxxx,Dy = 8 CLCK, 8 CLCK, 12 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,(Ay) / MOVE Ax,(Ay) MOVE (Ax),(Ay) / MOVE (Ax)+,(Ay) / MOVE -(Ax),(Ay) MOVE d(Ax),(Ay) / MOVE d(Ax,Dx),(Ay) MOVE $xx.W,(Ay) MOVE $xxxx.L,(Ay) / MOVE d(PC),(Ay) MOVE d(PC,Dx),(Ay) / MOVE #xxxx,(Ay) Açıklama : Source'taki datayı destination adres register'ının içeriğinin gösterdiği adrese yazar,
Etkilenen flaglar : -**00 Adresleme şekillerine göre harcadığı süre : MOVE Dx,(Ay) = 8 CLCK, 8 CLCK, 12 CLCK MOVE Ax,(Ay) = ------ , 8 CLCK, 12 CLCK MOVE (Ax),(Ay) = 12 CLCK, 12 CLCK, 20 CLCK MOVE (Ax)+,(Ay) = 12 CLCK, 12 CLCK, 20 CLCK MOVE -(Ax),(Ay) = 14 CLCK, 14 CLCK, 22 CLCK MOVE d(Ax),(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(Ax,Dx),(Ay) = 18 CLCK, 18 CLCK, 26 CLCK MOVE $xx.W,(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE $xxxx.L,(Ay) = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(PC),(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(PC,Dx),(Ay) = 18 CLCK, 18 CLCK, 26 CLCK MOVE #xxxx,(Ay) = 12 CLCK, 12 CLCK, 20 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,(Ay)+ / MOVE Ax,(Ay)+ MOVE (Ax),(Ay)+ / MOVE (Ax)+,(Ay)+ MOVE -(Ax),(Ay)+ / MOVE d(Ax),(Ay)+ MOVE d(Ax,Dx),(Ay)+ / MOVE $xx.W,(Ay)+ MOVE $xxxx.L,(Ay)+ / MOVE d(PC),(Ay)+ MOVE d(PC,Dx),(Ay)+ / MOVE #xxxx,(Ay)+ Açıklama : Source'taki datayı destination adres register'ının içeriğinin gösterdiği adrese yazar ve destination adres register'ını kullanılan bit genişliğine göre 1, 2 ya da 4 artırır. Bu şekilde adres register'ı, komut işlendikten sonra bir sonraki byte/ word/ longword'u gösterecektir. Etkilenen flaglar : -**00 Adresleme şekillerine göre harcadığı süre : MOVE Dx,(Ay)+ = 8 CLCK, 8 CLCK, 12 CLCK MOVE Ax,(Ay)+ = ------ , 8 CLCK, 12 CLCK MOVE (Ax),(Ay)+ = 12 CLCK, 12 CLCK, 20 CLCK MOVE (Ax)+,(Ay)+ = 12 CLCK, 12 CLCK, 20 CLCK MOVE -(Ax),(Ay)+ = 14 CLCK, 14 CLCK, 22 CLCK MOVE d(Ax),(Ay)+ = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(Ax,Dx),(Ay)+ = 18 CLCK, 18 CLCK, 26 CLCK MOVE $xx.W,(Ay)+ = 16 CLCK, 16 CLCK, 24 CLCK MOVE $xxxx.L,(Ay)+ = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(PC),(Ay)+ = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(PC,Dx),(Ay)+ = 18 CLCK, 18 CLCK, 26 CLCK MOVE #xxxx,(Ay)+ = 12 CLCK, 12 CLCK, 20 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,-(Ay) /MOVE Ax,-(Ay) MOVE (Ax),-(Ay) / MOVE (Ax)+,-(Ay) / MOVE -(Ax),-(Ay) MOVE d(Ax),-(Ay) / MOVE d(Ax,Dx),-(Ay) MOVE $xx.W,-(Ay) / MOVE $xxxx.L,-(Ay) MOVE d(PC),-(Ay) / MOVE d(PC,Dx),-(Ay) MOVE #xxxx,-(Ay) Açıklama : Source'un içeriğini destination adres register'ının gösterdiği adrese yazar ve destination adres register'ını, kullanılan bit genişliğine göre 1, 2 ya da 4 byte azaltır. Bu sayede, komut işlendikten sonra adres register'ı işlenen adresten 1/2/4 byte öncesini gösterecektir.
Etkilenen flaglar : -**00 Adresleme şekillerine göre harcadığı süre : MOVE Dx,-(Ay) = 8 CLCK, 8 CLCK, 14 CLCK MOVE Ax,-(Ay) =-------, 8 CLCK, 14 CLCK MOVE (Ax),-(Ay) = 12 CLCK, 12 CLCK, 20 CLCK MOVE (Ax)+,-(Ay) = 12 CLCK, 12 CLCK, 20 CLCK MOVE -(Ax),-(Ay) = 14 CLCK, 14 CLCK, 22 CLCK MOVE d(Ax),-(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(Ax,Dx),-(Ay) = 18 CLCK, 18 CLCK, 26 CLCK MOVE $xx.W,-(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE $xxxx.L,-(Ay) = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(PC),-(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE d(PC,Dx),-(Ay) = 18 CLCK, 18 CLCK, 26 CLCK MOVE #xxxx,-(Ay) = 12 CLCK, 12 CLCK, 20 CLCK Komut: MOVE (MOVE data)
Kullanım şekilleri: MOVE Dx,d(Ay) / MOVE Ax,d(Ay) MOVE (Ax),d(Ay) / MOVE (Ax)+,d(Ay) / MOVE -(Ax),d(Ay) MOVE d(Ax),d(Ay) / MOVE d(Ax,Dx),d(Ay) MOVE $xx.W,d(Ay) / MOVE $xxxx.L,d(Ay) MOVE d(PC),d(Ay) / MOVE d(PC,Dx),d(Ay) / MOVE #xxxx,d(Ay) Açıklama : Destination adres register'ı içeriğine d değerini ekler ve source içeriğini bulduğu bu adrese yazar. Destination adres register'ının içeriği, toplamadan sonra değişmemiş olacaktır; toplama sadece fiziksel adresin tespit edilmesini sağlar.
Etkilenen flaglar : -**00 Adresleme şekillerine göre harcadığı süre : MOVE Dx,d(Ay) = 12 CLCK, 12 CLCK, 16 CLCK MOVE Ax,d(Ay) = , 12 CLCK, 16 CLCK MOVE (Ax),d(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE (Ax)+,d(Ay) = 16 CLCK, 16 CLCK, 24 CLCK MOVE -(Ax),d(Ay) = 18 CLCK, 18 CLCK, 26 CLCK MOVE d(Ax),d(Ay) = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(Ax,Dx),d(Ay) = 22 CLCK, 22 CLCK, 30 CLCK MOVE $xx.W,d(Ay) = 20 CLCK, 20 CLCK, 28 CLCK MOVE $xxxx.L,d(Ay) = 24 CLCK, 24 CLCK, 32 CLCK MOVE d(PC),d(Ay) = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(PC,Dx),d(Ay) = 22 CLCK, 22 CLCK, 30 CLCK MOVE #xxxx,d(Ay) = 16 CLCK, 16 CLCK, 24 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,d(Ay,Dy) MOVE Ax,d(Ay,Dy) / MOVE (Ax),d(Ay,Dy) MOVE (Ax)+,d(Ay,Dy) / MOVE -(Ax),d(Ay,Dy) MOVE d(Ax),d(Ay,Dy) / MOVE d(Ax,Dx),d(Ay,Dy) MOVE $xx.W,d(Ay,Dy) / MOVE $xxxx.L,d(Ay,Dy) MOVE d(PC),d(Ay,Dy) / MOVE d(PC,Dx),d(Ay,Dy) MOVE #xxxx,d(Ay,Dy) Açıklama : Destination adres register'ı içeriğine destination data register'ı içeriğini ve d değerini ekler ve bulduğu adrese source'un içeriğini yazar. Bu arada destination register'larının içerikleri değişmeyecektir. Yapılan toplama sadece destination adresini bulmayı sağlar. Bu tür adresleme şekline indeksli/offsetli adresleme denir. Etkilenen flaglar : -**00 Adresleme şekillerine göre harcadığı süre :
MOVE Dx,d(Ay,Dy) = 14 CLCK, 14 CLCK, 18 CLCK MOVE Ax,d(Ay,Dy) = ------ , 14 CLCK, 18 CLCK MOVE (Ax),d(Ay,Dy) = 18 CLCK, 18 CLCK, 26 CLCK MOVE (Ax)+,d(Ay,Dy) = 18 CLCK, 18 CLCK, 26 CLCK MOVE -(Ax),d(Ay,Dy) = 20 CLCK, 20 CLCK, 28 CLCK MOVE d(Ax),d(Ay,Dy) = 22 CLCK, 22 CLCK, 30 CLCK MOVE d(Ax,Dx),d(Ay,Dy) = 24 CLCK, 24 CLCK, 32 CLCK MOVE $xx.W,d(Ay,Dy) = 22 CLCK, 22 CLCK, 30 CLCK MOVE $xxxx.L,d(Ay,Dy) = 26 CLCK, 26 CLCK, 34 CLCK MOVE d(PC),d(Ay,Dy) = 22 CLCK, 22 CLCK, 30 CLCK MOVE d(PC,Dx),d(Ay,Dy) = 24 CLCK, 24 CLCK, 32 CLCK MOVE #xxxx,d(Ay,Dy) = 18 CLCK, 18 CLCK, 26 CLCK Komut: MOVE (MOVE data) Kullanım şekilleri: MOVE Dx,$yy.W / MOVE Ax,$yy.W MOVE (Ax),$yy.W / MOVE (Ax)+,$yy.W MOVE -(Ax),$yy.W / MOVE d(Ax),$yy.W