Tải bản đầy đủ (.pdf) (26 trang)

thiết bị lập trình , chương 10

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (293.78 KB, 26 trang )

8/13/2007
1
Tập lệnh liên quan đến Byte,
word, Double word
1/Xử lý toán học, tăng giảm thanh ghi
2/Tập lệnh lôgíc với Byte, Word, Double Word
3/Tập lệnh dịch chuyển nội dung thanh ghi, ô nhớ
4/Tập lệnh xoay và lật thanh ghi
5/Tập lệnh so sánh nội dung thanh ghi, ô nhớ
6/ Tập lệnh chuyển đổi kiểu dữ liệu
7/Lệnh nhẩy
8/Lệnh For-Next
Các lệnh toán học, tăng giảm thanh ghi

Các lệnh cộng, trừ, nhân,
căn bậc hai
, lợng
giác, tăng, giảm thanh ghi tác động lên 3 cờ
nhớ:
SM1.0: Cờ không
SM1.1: Cờ tràn
SM1.2: Cờ âm

Các lệnh chia tác động lên 4 cờ nhớ:
SM1.0; SM1.1; SM1.2;
SM1.3: Cờ chia không
8/13/2007
2
Nhãm lÖnh to¸n häc:
ADD_I: LÖnh céng sè nguyªn 16 bÝt
ADD_DI: LÖnh céng sè nguyªn 32 bÝt


ADD_R: LÖnh céng sè thùc
Thao t¸c: IN1 + IN2 → OUT
SUB_I: LÖnh trõ sè nguyªn 16 bÝt
SUB_DI: LÖnh trõ sè nguyªn 32 bÝt
SUB_R: LÖnh trõ sè thùc
Thao t¸c: IN1 - IN2 → OUT
MUL_I: LÖnh nh©n sè nguyªn 16 bÝt
MUL_DI: LÖnh nh©n sè nguyªn 32 bÝt
MUL_R: LÖnh nh©n sè thùc
Thao t¸c: IN1 * IN2 → OUT
DIV_I: LÖnh chia sè nguyªn 16 bÝt
DIV_DI: LÖnh chia sè nguyªn 32 bÝt
DIV_R: LÖnh chia sè thùc
Thao t¸c: IN1 / IN2 → OUT
Chó ý:
PhÐp to¸n nh©n 2 sè nguyªn 16 bÝt, kÕt qu¶ sè nguyªn 16 bÝt
PhÐp to¸n nh©n 2 sè nguyªn 32 bÝt, kÕt qu¶ sè nguyªn 32 bÝt
§èi víi phÐp chia sè nguyªn, phÇn d− kh«ng ®−îc l−u l¹i
Thao t¸c (+): IN1 + OUT → OUT
Thao t¸c (-): OUT - IN1 → OUT
Thao t¸c (*): IN1 * OUT → OUT
Thao t¸c (/): OUT / IN1 → OUT
8/13/2007
3
LD I0.0
+I AC1, AC0
*I AC1, VW100
/I VW10, VW200
PhÐp céng:
PhÐp nh©n:

PhÐp chia:
LD I0.0
+R AC1, AC0
*R AC1, VD100
/R VD10, VD200
PhÐp céng:
PhÐp nh©n:
PhÐp chia:
8/13/2007
4
Nhân, chia có số d:
MUL: Lệnh nhân
DIV: Lệnh chia
Thao tác: IN1 * IN2 OUT
Thao tác: IN1 / IN2 OUT
Thao tác: IN1 * OUT OUT
Thao tác: OUT / IN1 OUT
Chú ý: Kết quả phép nhân là số nguyên 32 bít
Đối với phép chia số nguyên, phần d đợc lu lại
Phép nhân:
Phép chia:
VW202: chứa thơng số
VW200: chứa phần d
8/13/2007
5
Nhãm lÖnh l−îng gi¸c, khai c¨n, e mò:
SIN(IN) = OUT
COS(IN) = OUT
TAN(IN) = OUT
LN(IN) = OUT

EXP(IN) = OUT
SQRT(IN) = OUT
§Ó thùc hiÖn hµm x
y
:
EXP(Y*LN(X))
Nhãm lÖnh t¨ng vµ gi¶m néi dung « nhí:
T¨ng: IN + 1 = OUT
Gi¶m: IN - 1 = OUT
T¨ng: OUT + 1 = OUT
Gi¶m: OUT - 1 = OUT
8/13/2007
6
Chú ý:
Lệnh tăng (INC_B) và giảm (DEC_B) là
loại lệnh không dấu.
Lệnh tăng (INC_W) và giảm (DEC_W) là
loại lệnh có dấu (bít dấu có ảnh hởng đến
kết quả) 16#7FFF > 16#8000.
Lệnh tăng (INC_D) và giảm (DEC_D) là
loại lệnh có dấu (bít dấu có ảnh hởng đến
kết quả) 16#7FFFFFFF > 16#80000000.
SM1.2: cờ âm (đối với W và D)
Tập lệnh với byte, word, double word

Nhóm lệnh đảo nội dung thanh ghi, tác động
lên 1 cờ nhớ:
SM1.0: Cờ không

Nhóm lệnh AND, OR, XOR:

SM1.0: Cờ không
8/13/2007
7
Nhãm lÖnh ®¶o néi dung thanh ghi:
INV_B: §¶o néi dung 1 byte
INV_W: §¶o néi dung 1 word
INV_DW: §¶o néi dung 1
double word
Thao t¸c: ~IN = OUT
LÖnh nghÞch ®¶o trªn tõng
bÝt cña ®èi sè:
IN: 00110101
OUT: 11001010
Thao t¸c: ~OUT = OUT
Nhãm lÖnh AND, OR, XOR:
Thao t¸c:
WAND: IN1 IN2 = OUT
WOR: IN1 IN2 = OUT
WXOR: IN1 IN2 = OUT
&

=
Thao t¸c:
WAND: IN1 OUT = OUT
WOR: IN1 OUT = OUT
WXOR: IN1 OUT = OUT
&

=
8/13/2007

8
Nhãm lÖnh dÞch chuyÓn thanh ghi, « nhí

Nhãm lÖnh dÞch chuyÓn

Nhãm lÖnh dÞch chuyÓn khèi
8/13/2007
9
Nhóm lệnh dịch chuyển:
Thao tác: IN OUT

Lệnh sao chép nội dung
vùng nhớ IN sang vị trí vùng
nhớ mới OUT.

Nội dung của IN không
bị thay đổi sau lệnh dịch
chuyển.
Nhóm lệnh dịch chuyển khối:
Thao tác: IN OUT

N: Số lợng dữ liệu cần
sao chép, N = 1- 255.

Lệnh sao chép một
mảng dữ liệu, kể từ địa chỉ
đặt trong IN.
8/13/2007
10
VÝ dô:

KÕt qu¶ thao t¸c:
Nhãm lÖnh xoay vµ lËt thanh ghi

Nhãm lÖnh lËt ph¶i, lËt tr¸i, xoay ph¶i, xoay
tr¸i.
LÖnh t¸c ®éng lªn 2 cê nhí
SM1.0: Cê kh«ng
SM1.1: Cê trµn

LÖnh lËt c¸c bit thanh ghi.

×