Professional Documents
Culture Documents
STT PDF
STT PDF
S Thc Du Phy ng
Bi:
Wiki Pedia
1/10
S Thc Du Phy ng
Tng quan
Mt cch biu din s (gi l h thng k s trong ton hc) bao gm phng php dng
lu tr mt con s bng mt chui cc ch s. S hc c nh ngha l tp hp cc
thao tc cn lm trn cch biu din s cho thc hin cc php ton s hc (cng,
tr, nhn, chia).
Cch biu din s du phy ng tng t vi cch dng trong k hiu khoa hc. M t
lun l th mt s du phy ng bao gm:
2/10
S Thc Du Phy ng
Khi dng cch biu din du phy ng, phng php lu tr phn nh tr, s m v
bit du bn trong my tnh ty thuc vo mi loi my theo chun no. Hin nay, chun
IEEE 754 l thng dng nht s c m t phn sau. Nhng y, chng ta th
xt nh dng nh phn chnh xc n (32 bit) ca IEEE754. Theo chun ny th
mt s du phy ng nh dng chnh xc n s c 32 bit bao gm: 1 bit du,
23 bit cho phn nh tr v 8 bit cho phn s m.Ly v d, 33 bit u tin ca s l
11.001001 00001111 11011010 10100010 0 (lu du phy c s nm sau bit 1 th
hai t bn tri qua). biu din s ny nh dng IEEE 754 chnh xc n, ta
phi lm trn chui bit ni trn cn 24 bit (ti sao li l 24 bit trong khi phn nh tr
ca nh dng chnh xc n ch c 23 bit s c gii thch ngay sau y). lm trn
nh vy, ta kt hp cc gi tr ca bit th 24 v bit th 25 c gi tr 11.001001
00001111 11011011. Yu cu ca chun IEEE 754 l phn nh tr phi c gi tr nm
trong khong t 1 n 2 (tc l chun IEEE 754 quy c du chm c s lun lun nm
ngay sau bit 1 u tin). Chnh v th ta phi ly t l kt qu lm trn thnh 1.1001001
00001111 11011011vi s m e = 1. n y, v bit u tin (v cng l duy nht) ng
trc du phy c s ca phn nh tr lun lun l 1 nn ta khng cn lu tr bit ny
v vit gn phn nh tr l 1001001 00001111 11011011. Khi , s bit ca phn nh
tr ch cn 23 bit khp vi s bit c chun IEEE 754 dng cho phn nh tr. xc
nh gi tr ca , ta dng cng thc
3/10
S Thc Du Phy ng
Biu din du phy ng ni chung, c bit nh dng chun IEEE, hin nay v trong
tng lai gn vn l phng php cho php lu tr trong my tnh gi tr xp x cc s
thc bi v n c s dng hiu qu trong hu ht cc b vi x l my tnh. Tuy nhin,
vn c nhng phng php khc:
Cch biu din du phy tnh dng phn cng lm vic vi cc s nguyn vi
phn mm quy nh v tr c th ca du phy thp phn hay nh phn, chng
hn, quy nh r du phy nm ngay sau 6 bit hay 6 ch s k t bn phi.
Phn cng thc hin trn cch biu din ny n gin hn so vi phn cng
cn c trong du phy ng v thng thng c dng thc thi cc php
ton s nguyn. c bit, du phy tnh nh phn thng c dng trong
nhng ng dng ring bit trn cc b vi x l nhng m ch cn lm cc php
ton s hc nguyn, cn du phy tnh thp phn th thng dng trong cc ng
dng thng mi.
M BCD l mt cch m ha cc s thp phn bng cch thay mi ch s thp
phn bng mt dy s nh phn i din cho ch s .
Khi cn chnh xc cao hn, cc php ton cho du phy ng c th c
sa i bng phn mm sao cho phn nh tr ca du phy ng c th thay
i chiu di tc c th tng hay gim ty theo phn mm. Phng php ny
gi l chnh xc thay i, hay cn gi l s hc "bignum c t l" .
Cc h thng s hc my tnh chng hn nh Mathematica, Maple v Maxima
thng cho php lm vic trn cc s v t nh hay theo mt kiu hnh thc
ngha l ging nh ta lm vic vi mt k hiu ton hc thun ty m khng
cn phi chuyn cc s ni trn ra dng gn ng du phy ng. Nhng phn
mm nh vy c th tnh ton cc biu thc chng hn nh "sin3" mt cch
chnh xc, bi v chng c lp trnh hiu ngha ton hc ca cc k
hiu ny.
Mt cch biu din na da trn logarith t nhin m i khi c dng trong
nhng ng dng da trn FPGA m trong hu ht cc php ton s hc cn
lm l ton nhn v ton chia. Ging nh biu din du phy ng, cch biu
4/10
S Thc Du Phy ng
Bng cch cho php v tr ca du phy c s iu chnh c, cch biu din du phy
ng gip ngi s dng thc hin cc php ton trn mt tm rng v bin ng
vi mt s c nh ch s m vn duy tr c chnh xc tt. V d, trong h thng
du phy ng thp phn c phn nh tr l ba ch s v phn m l mt ch s (tng
cng ti nguyn hin th cho mt con s l 4 ch s), php nhn m con ngi chng ta
thng vit
Nu thc hin php nhn ni trn trong mt h thng du phy tnh c ti nguyn hin
th l 4 ch s vi quy c du phy thp phn lun pha sau ch s u tin bn tri
th kt qu s l
2* (b-1) * b ^ (p-1) * (u l + 1)
5/10
S Thc Du Phy ng
Lch s
Dng my tnh [[UNIVAC 1100/2200] c gii thiu nm 1962, cho php lm vic
vi hai nh dng du phy ng. nh dng chnh xc n dng 36 bit, t chc thnh
1 bit du, 8 bit phn m v 27 bit phn nh tr. nh dng chnh xc kp dng 72
bit t chc thnh 1 bit du, 11 bit phn m v phn nh tr 60 bit. My tnh IBM 7094
c gii thiu cng nm, cng cho php lm vic vi nh dng chnh xc n v
chnh xc kp nhng c cch t chc hi khc. Trc khi c chun IEEE 754, cc
my tnh dng nhiu dng du phy ng khc nhau. Nhng nh dng ny khc nhau
v chiu di bit, cch hin th v cch lm trn cc php ton. Nhng khc bit ny
dn n nhng phn khc nhau v s hc trong c phn cng ln phn mm, v c
chnh xc khc nhau. Chun IEEE-754 ra i vo u thp nin 1980, dn n vic dng
chiu di 32 bit (hay 16 hay 64 bit) tr nn c tha nhn. Mt s c im ca chun
ny:
6/10
S Thc Du Phy ng
Hip hi IEEE chun ha cho vic biu din s du phy ng nh phn trong my
tnh bng cch a ra chun IEEE 754. Ngy nay hu ht cc my tnh u tun th theo
chun ny. Mt s trng hp ngai l nh my tnh ln IBM v my vector Cray. Loi
my tnh ln IBM ngoi nh dng thp phn v nh phn IEEE 754 cn c mt nh
dng ring ca IBM. Cn vi my vector Cray th h T90 c mt phin bn IEEE nhng
my SV1 vn cn dng nh dng du phy ng ca chnh Cray.
Chun IEEE 754 a ra nhiu nh dng rt gn nhau, ch khc nhau mt t chi tit.
Nm trong s nhng nh dng ny c gi l nh dng c bn, v hai trong chng
c bit c dng rng ri trong c phn cng my tnh v ngn ng lp trnh:
7/10
S Thc Du Phy ng
8/10
S Thc Du Phy ng
dng biu din cc s zero v s khng chun ha, nu phn m c tt c cc bit bng
1 th n c dng biu din cc v cc v NaN. Nh vy, gi tr phn m ca cc s
chun ha c tm nm trong [-126, 127] chnh xc n, [-1022, 1023] chnh
xc kp, hay [-16382, 16383] vi chnh xc bc bn. Khi ta ni n s chun ha l
ta loi tr khng xt cc s zero, v cc, NaN v cc s khng chun ha.
Cc gi tr c bit
S zero c du
Trong chun IEEE 754, s zero c du, ngha l c n hai s zero: s "zero dng"
(+0) v s "negative zero" (-0). Trong hu ht cc mi trng thc thi, s zero dng
thng c xut hin l "0", trong khi s zero m c th c in l "-0". Hai gi tr
ny c xem l bng nhau v mt gi tr nhng mt vi php ton s thng bo kt
qu phn bit gia +0 v -0. Ly v d, a/(-0) s cho ra kt qu l v cc m cn a/(+0)
s cho kt qu l v cc dng vi a l mt s dng. Trng hp a l s m th kt
qu ngc li. Tuy nhin, hai php ton ny khi thng bo kt qu cng km theo thng
bo trng hp ngoi l chia cho s zero. Mt php ton arrcot c tnh i xng du
chng hn s cho cc kt qu khc nhau cho hai trng hp +0 v -0 m khng c bt
k thng bo ngoi l no ht. S khc bit gia +0 v -0 d nhn thy trong cc php
ton phc tp ti ci gi l lt ct r nhnh.
1. M t chung
S thc du phy ng c dng biu din cc s thc trong tnh ton khoa hc.
Tng qut mt s thc X c biu din theo kiu s du phy ng nh sau: X =
M*Re.
Trong :
9/10
S Thc Du Phy ng
M l phn nh tr (Mantissa)
R l c s (Radix)
E l phn m (Exponent)
2. Chun IEEE754/85
C s R = 2
Cc dng 32, 44, 64, 80 bt
V d dng 32 bit
1 bt 8 bt 23 bt
S e m
S l bt du (s dng S = 0)
e l m excess ca phn m E (e = E+127 hay E = e-127, s 127 y l
lch bias)
m l phn l ca phn nh tr M ( M = 1.m)
1 1 0 0 0 0 0 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
S = 1 -> S m (S l 1 bt u tin).
e = 1000 00102 = 13010 -> E = 130 - 127 = 3 (e l 8 bt tip theo).
m = 101011 -> M = 1.101011 (m l 23 bt cn li, y khng cn quan tm
n cc bt 0 cui v khi ghp M = 1.m th cc s 0 ny khng cn vit vo)
10/10