-
用宏和高級匯編技術實現類似高級語言中的條件分支語句IF功能。同時,編寫一個程序證明所編寫宏的正確性。要求如下:
(1).iff后的條件為“x1,op,x2”形式,其中x1和x2為操作數,op為關系比較符,用g(>),l(<),e(=), ge(>=), le(<=)表示。另外,x1和x2必須是字。
(2).elsee語句(相當于else語句)是可選項,即iff后可以不跟elsee。
(3)條件分支iff的結束用.ifend表示.
標簽:
匯編
技術實現
分支
高級語言
上傳時間:
2013-12-31
上傳用戶:風之驕子
-
構造一個簡單程序設計語言的詞法分析器,要求:
1) 含有保留字program, begin, end, var, integer, if, then, else, do, while.
2) 標識符和無符號的整常數,其中保留字和標識符不區分大小寫.
3) 含有界符和運算符如下:+,-, (, ), =, >, <, , :, :=.,,。
4) 輸出二元組。
標簽:
程序設計語言
分析器
上傳時間:
2014-01-04
上傳用戶:離殤
-
DESProcess
FILE *mfp,*cfp
int ttch=0,xorRes,ttbitdiff=0
char mch,cch
float bdiff=0
if((mfp=fopen(mfile,"r"))==NULL)
{cout<<"Cannot open the file to compare"<<endl }
if((cfp=fopen(cfile,"r"))==NULL)
{cout<<"Cannot open the file to compare"<<endl }
else
{
while(!feof(mfp)&!feof(cfp))
{
ttch++
mch=fgetc(mfp)
cch=fgetc(cfp)
xorRes=mch^cch
ttbitdiff+=(xorRes&1)+(xorRes&2)/2+(xorRes&4)/4+(xorRes&8)/8+(xorRes&16)/16+(xorRes&32)/32+(xorRes&64)/64+(xorRes&128)/128
}
bdiff=float(ttbitdiff)*100/float(ttch*8)
}
*bitdiff8byte=float(ttbitdiff)*100/float(8*8)
return bdiff
標簽:
DESProcess
ttbitdiff
xorRes
bdiff
上傳時間:
2016-07-02
上傳用戶:1079836864
-
Make Text-Overflow work on both IE and Firefox
If the text inside each line exceed the width of each line, then you will see "..." (ellipsis) shows up at the end of each line.
Try to resize the window or change the font size to see if "..." (ellipsis) will show up or disappear.
Demo - Listing
標簽:
Text-Overflow
the
Firefox
inside
上傳時間:
2013-12-18
上傳用戶:lgnf
-
private double PointToAngle(Point AOrigin, Point APoint)
{
if (APoint.X == AOrigin.X)
if (APoint.Y > AOrigin.Y)
return Math.PI * 0.5f
else return Math.PI * 1.5f
else if (APoint.Y == AOrigin.Y)
if (APoint.X > AOrigin.X)
return 0
else return Math.PI
else
{
標簽:
AOrigin
APoint
Point
PointToAngle
上傳時間:
2016-10-31
上傳用戶:zhyiroy
-
private double PointToAngle(Point AOrigin, Point APoint)
{
if (APoint.X == AOrigin.X)
if (APoint.Y > AOrigin.Y)
return Math.PI * 0.5f
else return Math.PI * 1.5f
else if (APoint.Y == AOrigin.Y)
if (APoint.X > AOrigin.X)
return 0
else return Math.PI
else
{
標簽:
AOrigin
APoint
Point
PointToAngle
上傳時間:
2016-10-31
上傳用戶:sunjet
-
private double PointToAngle(Point AOrigin, Point APoint)
{
if (APoint.X == AOrigin.X)
if (APoint.Y > AOrigin.Y)
return Math.PI * 0.5f
else return Math.PI * 1.5f
else if (APoint.Y == AOrigin.Y)
if (APoint.X > AOrigin.X)
return 0
else return Math.PI
else
{
標簽:
AOrigin
APoint
Point
PointToAngle
上傳時間:
2013-12-18
上傳用戶:rocketrevenge
-
function [U,center,result,w,obj_fcn]= fenlei(data)
[data_n,in_n] = size(data)
m= 2 % Exponent for U
max_iter = 100 % Max. iteration
min_impro =1e-5 % Min. improvement
c=3
[center, U, obj_fcn] = fcm(data, c)
for i=1:max_iter
if F(U)>0.98
break
else
w_new=eye(in_n,in_n)
center1=sum(center)/c
a=center1(1)./center1
deta=center-center1(ones(c,1),:)
w=sqrt(sum(deta.^2)).*a
for j=1:in_n
w_new(j,j)=w(j)
end
data1=data*w_new
[center, U, obj_fcn] = fcm(data1, c)
center=center./w(ones(c,1),:)
obj_fcn=obj_fcn/sum(w.^2)
end
end
display(i)
result=zeros(1,data_n) U_=max(U)
for i=1:data_n
for j=1:c
if U(j,i)==U_(i)
result(i)=j continue
end
end
end
標簽:
data
function
Exponent
obj_fcn
上傳時間:
2013-12-18
上傳用戶:ynzfm
-
void insert_sort(int *a,int n)
{
if(n==1) return
insert_sort(a,n-1)
int temp=a[n-1]
for(int i=n-2 i>=0 i--)
{
if(temp<a[i])
a[i+1]=a[i]
else break
}
a[i+1]=temp
}
標簽:
insert_sort
int
return
void
上傳時間:
2014-01-22
上傳用戶:banyou
-
詞法分析
1 試驗目的
設計,編制并調試一個此法分析程序,加深對此法分原理的理解.
2 試驗要求
1)待分析的簡單語言的詞法
* 關鍵字:
begin if then while do end
所有關鍵字都是小寫.
2)運算符和界符:
: = + * - / < <= <> > >= = ( ) #
3)其他單詞是標識符(ID)和整數型常數(NUM),通過一下正規式定義:
ID=letter (letter|digit)*
NUM=digit digit*
4)空格由空白,制表符和換行符組成,空格一般用來分隔ID,NUM,運算符,界符和關鍵字,此法分析階段通常被忽略.
3 各種單詞符號對應的種別碼如表所示
標簽:
begin
分
then
whi
上傳時間:
2017-01-08
上傳用戶:dongqiangqiang