php邏
1. 計算機非常的深奧,尤其是編程,乾脆看不懂,怎樣才能看懂,並學會編程
首先提高自己的內涵,也就是說提高自己的數學和英語水平,尤其在函數與變數那塊下工夫,把那本計算機英語看熟。學習有時候是沒有捷徑的
2. c邏輯思維到底是什麼要怎麼培養呀
讀一些邏輯性較強的經典著作,要抓住著作的條理性和邏輯,建立在理解書中概念的基礎上,我們可以模仿其中的推論,復現書中的關鍵內容為止。
這時候,我們知道知識的來龍去脈,我們是通過思維而獲得知識,而不是通過大量的熟背強記知識,知識更具有邏輯的使用價值。
反之,那些只求生吞活剝別人思想的人,無異於讓別的母雞在你的腦袋上下蛋,即使博學多識,卻也深陷大量的知識而無法自拔。
托爾斯泰曾說過:知識,只有當它靠積極的思維得來而不是憑證記得來的時候,才是真正的知識。
心理學家羅伯特·依·布倫南說:「如果沒有基本法則的知識,就得處理一串串冗長的信息,我們的記憶必定負擔繁重。最完美的記憶方法是把現象按因果關系聯系起來,因為哲學的任務是研究這種關系,所以我們可以主要通過培養哲理頭腦來彌補記憶力的不足。」
3. Laravel是一套簡潔、優雅的phpWeb開發框架(PHPWebFramework)。
N a t i v e A p p 開 發 N a t i v e A p p 開 發 即 我 們 所 稱 的 傳 統 A P P 開 發 模 式 ( 原 生 A P P 開 發 模 式 ) , 該 開 發 針 對 I O S 、 A n d r o i d 等 不 同 的 手 機 操 作 系 統 要 采 用 不 同 的 語 言 和 框 架 進 行 開 發 , 該 模 式 通 常 是 由 「 雲 服 務 器 數 據 + A P P 應 用 客 戶 端 」 兩 部 份 構 成 , A P P 應 用 所 有 的 U I 元 素 、 數 據 內 容 、 邏 輯 框 架 均 安 裝 在 手 機 終 端 上 。 W e b A p p 開 發 W e b A p p 開 發 即 是 一 種 框 架 型 A P P 開 發 模 式 ( H T M L 5 A P P 框 架 開 發 模 式 ) , 該 開 發 具 有 跨 平 台 的 優 勢 , 該 模 式 通 常 由 「 H T M L 5 雲 網 站 + A P P 應 用 客 戶 端 」 兩 部 份 構 成 , A P P 應 用 客 戶 端 只 需 安 裝 應 用 的 框 架 部 份 , 而 應 用 的 數 據 則 是 每 次 打 開 A P P 的 時 候 , 去 雲 端 取 數 據 呈 現 給 手 機 用 戶 。 W e b A P P 應 用 呈 現 以 下 特 點 : ( 1 ) 每 次 打 開 A P P , 都 要 通 過 A P P 框 架 向 雲 網 站 取 U I 及 數 據 ( 2 ) 手 機 用 戶 無 法 上 網 則 無 法 訪 問 A P P 應 用 中 的 數 據 。 ( 3 ) 框 架 型 的 A P P 無 法 調 用 手 機 終 端 的 硬 件 設 備 ( 語 音 、 攝 像 頭 、 短 信 、 G P S 、 藍 牙 、 重 力 感 應 等 ) ( 4 ) 框 架 型 A P P 的 訪 問 速 度 受 手 機 終 端 上 網 的 限 制 , 每 次 使 用 均 會 消 耗 一 定 的 手 機 上 網 流 量 ; ( 5 ) 框 架 型 A P P 應 用 的 安 裝 包 小 巧 , 只 包 含 框 架 文 件 , 而 大 量 的 U I 元 素 、 數 據 內 容 剛 存 放 在 雲 端 ; ( 6 ) A P P 用 戶 每 次 都 可 以 訪 問 到 實 時 的 最 新 的 雲 端 數 據 ; ( 7 ) A P P 用 戶 無 須 頻 繁 更 新 A P P 應 用 , 與 雲 端 實 現 的 是 實 時 數 據 交 互 ; 適 用 企 業 : 電 子 商 務 、 金 融 、 新 聞 資 訊 、 企 業 集 團 需 經 常 更 新 內 容 的 A P P 應 用 。 N a t i v e A p p ( 原 生 型 A P P ) 應 用 呈 現 以 下 特 點 : ( 1 ) 每 次 獲 取 最 新 的 A P P 功 能 , 需 要 升 級 A P P 應 用 ; ( 2 ) 原 生 型 A P P 應 用 的 安 裝 包 相 對 較 大 , 包 含 U I 元 素 、 數 據 內 容 、 邏 輯 框 架 ; ( 3 ) 手 機 用 戶 無 法 上 網 也 可 訪 問 A P P 應 用 中 以 前 下 載 的 數 據 。 ( 4 ) 原 生 型 的 A P P 可 以 調 用 手 機 終 端 的 硬 件 設 備 ( 語 音 、 攝 像 頭 、 短 信 、 G P S 、 藍 牙 、 重 力 感 應 等 ) ( 5 ) A P P 應 用 更 新 新 功 能 , 涉 及 到 每 次 要 向 各 個 應 用 商 店 進 行 提 交 審 核 。 適 用 企 業 : 游 戲 、 電 子 雜 志 、 管 理 應 用 、 物 聯 網 等 無 需 經 常 更 新 程 序 框 架 的 A P P 應 用 。 移 動 W e b 無 所 不 在 , 移 動 W e b 是 目 前 唯 一 的 支 持 各 種 設 備 訪 問 的 平 台 , 與 桌 面 W e b 一 樣 , 移 動 W e b 支 持 各 種 標 准 的 協 議 。 移 動 W e b 也 是 唯 一 一 個 可 供 開 發 者 發 布 移 動 應 用 的 平 台 , 它 將 各 種 移 動 交 互 與 桌 面 任 務 有 效 地 連 接 了 起 來 ; 而 開 發 N a t i v e A p p 可 以 充 分 利 用 設 備 的 特 性 , 而 這 一 點 往 往 是 W e b 瀏 覽 器 做 不 到 的 , 所 以 對 一 個 產 品 本 身 而 言 , N a t i v e A p p 是 最 佳 的 選 擇 。 如 果 有 這 方 面 的 需 求 的 話 , 可 以 了 解 一 下 成 都 思 維 定 制 , 之 前 合 作 過 , 非 常 專 業 。
4. 求簡體繁體轉換HTML或者PHP源碼
將以下代碼保存為fj.htm,就可以使用了。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>漢字簡體繁體轉換 http://www.ip138.com</title>
<script language="JavaScript">
<!--
function (ob) {
var obj=findObj(ob); if (obj) {
obj.select();js=obj.createTextRange();js.execCommand("Copy");}
}
function paste(ob) {
var obj=findObj(ob); if (obj) {
obj.select();js=obj.createTextRange();js.execCommand("Paste");}
}
function cut(ob) {
var obj=findObj(ob); if (obj) {
obj.select();js=obj.createTextRange();js.execCommand("Cut");}
}
function findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function charPYStr(){
return '錒皚藹礙愛噯嬡璦曖靄諳銨鵪骯襖奧媼驁鰲壩罷鈀擺敗唄頒辦絆鈑幫綁鎊謗剝飽寶報鮑鴇齙輩貝鋇狽備憊鵯賁錛綳筆畢斃幣閉蓽嗶潷鉍篳蹕邊編貶變辯辮苄緶籩標驃颮飆鏢鑣鰾鱉別癟瀕濱賓擯儐繽檳殯臏鑌髕鬢餅稟撥缽鉑駁餑鈸鵓補鈽財參蠶殘慚慘燦驂黲蒼艙倉滄廁側冊測惻層詫鍤儕釵攙摻蟬饞讒纏鏟產闡顫囅諂讖蕆懺嬋驏覘禪鐔場嘗長償腸廠暢倀萇悵閶鯧鈔車徹硨塵陳襯傖諶櫬磣齔撐稱懲誠騁棖檉鋮鐺痴遲馳恥齒熾飭鴟沖沖蟲寵銃疇躊籌綢儔幬讎櫥廚鋤雛礎儲觸處芻絀躕傳釧瘡闖創愴錘綞純鶉綽輟齪辭詞賜鶿聰蔥囪從叢蓯驄樅湊輳躥竄攛錯銼鹺達噠韃帶貸駘紿擔單鄲撣膽憚誕彈殫賧癉簞當擋黨盪檔讜碭襠搗島禱導盜燾燈鄧鐙敵滌遞締糴詆諦綈覿鏑顛點墊電巔鈿癲釣調銚鯛諜疊鰈釘頂錠訂鋌丟銩東動棟凍崬鶇竇犢獨讀賭鍍瀆櫝牘篤黷鍛斷緞籪兌隊對懟鐓噸頓鈍燉躉奪墮鐸鵝額訛惡餓諤堊閼軛鋨鍔鶚顎顓鱷誒兒爾餌貳邇鉺鴯鮞發罰閥琺礬釩煩販飯訪紡鈁魴飛誹廢費緋鐨鯡紛墳奮憤糞僨豐楓鋒風瘋馮縫諷鳳灃膚輻撫輔賦復負訃婦縛鳧駙紱紼賻麩鮒鰒釓該鈣蓋賅桿趕稈贛尷擀紺岡剛鋼綱崗戇鎬睾誥縞鋯擱鴿閣鉻個紇鎘潁給亘賡綆鯁龔宮鞏貢鉤溝苟構購夠詬緱覯蠱顧詁轂鈷錮鴣鵠鶻剮掛鴰摑關觀館慣貫詿摜鸛鰥廣獷規歸龜閨軌詭貴劊匭劌媯檜鮭鱖輥滾袞緄鯀鍋國過堝咼幗槨蟈鉿駭韓漢闞絎頡號灝顥閡鶴賀訶闔蠣橫轟鴻紅黌訌葒閎鱟壺護滬戶滸鶘嘩華畫劃話驊樺鏵懷壞歡環還緩換喚瘓煥渙奐繯鍰鯇黃謊鰉揮輝毀賄穢會燴匯諱誨繪詼薈噦澮繢琿暉葷渾諢餛閽獲貨禍鈥鑊擊機積飢跡譏雞績緝極輯級擠幾薊劑濟計記際繼紀訐詰薺嘰嚌驥璣覬齏磯羈蠆躋霽鱭鯽夾莢頰賈鉀價駕郟浹鋏鎵蟯殲監堅箋間艱緘繭檢鹼鹼揀撿簡儉減薦檻鑒踐賤見鍵艦劍餞漸濺澗諫縑戔戩瞼鶼筧鰹韉將漿蔣槳獎講醬絳韁膠澆驕嬌攪鉸矯僥腳餃繳絞轎較撟嶠鷦鮫階節潔結誡屆癤頜鮚緊錦僅謹進晉燼盡勁荊莖巹藎饉縉贐覲鯨驚經頸靜鏡徑痙競凈剄涇逕弳脛靚糾廄舊鬮鳩鷲駒舉據鋸懼劇詎屨櫸颶鉅鋦窶齟鵑絹錈鐫雋覺決絕譎珏鈞軍駿皸開凱剴塏愾愷鎧鍇龕閌鈧銬顆殼課騍緙軻鈳錁頷墾懇齦鏗摳庫褲嚳塊儈鄶噲膾寬獪髖礦曠況誆誑鄺壙纊貺虧巋窺饋潰匱蕢憒聵簣閫錕鯤擴闊蠐蠟臘萊來賴崍徠淶瀨賚睞錸癩籟藍欄攔籃闌蘭瀾讕攬覽懶纜爛濫嵐欖斕鑭襤琅閬鋃撈勞澇嘮嶗銠鐒癆樂鰳鐳壘類淚誄縲籬狸離鯉禮麗厲勵礫歷瀝隸儷酈壢藶蒞蘺嚦邐驪縭櫪櫟轢礪鋰鸝癘糲躒靂鱺鱧倆聯蓮連鐮憐漣簾斂臉鏈戀煉練蘞奩瀲璉殮褳襝鰱糧涼兩輛諒魎療遼鐐繚釕鷯獵臨鄰鱗凜賃藺廩檁轔躪齡鈴靈嶺領綾欞蟶鯪餾劉瀏騮綹鎦鷚龍聾嚨籠壟攏隴蘢瀧瓏櫳朧礱樓婁摟簍僂蔞嘍嶁鏤瘺耬螻髏蘆盧顱廬爐擄鹵虜魯賂祿錄陸壚擼嚕閭瀘淥櫨櫓轤輅轆氌臚鸕鷺艫鱸巒攣孿灤亂臠孌欒鸞鑾掄輪倫侖淪綸論圇蘿羅邏鑼籮騾駱絡犖玀濼欏腡鏍驢呂鋁侶屢縷慮濾綠櫚褸鋝嘸媽瑪碼螞馬罵嗎嘜嬤榪買麥賣邁脈勱瞞饅蠻滿謾縵鏝顙鰻貓錨鉚貿麽沒鎂門悶們捫燜懣鍆錳夢眯謎彌覓冪羋謐獼禰綿緬澠靦黽廟緲繆滅憫閩閔緡鳴銘謬謨驀饃歿鏌謀畝鉬吶鈉納難撓腦惱鬧鐃訥餒內擬膩鈮鯢攆輦鯰釀鳥蔦裊聶嚙鑷鎳隉櫱囁顢躡檸獰寧擰濘薴嚀聹鈕紐膿濃農儂噥駑釹諾儺瘧歐鷗毆嘔漚謳慪甌盤蹣龐拋皰賠轡噴鵬紕羆鈹騙諞駢飄縹頻貧嬪蘋憑評潑頗釙撲鋪朴譜鏷鐠棲臍齊騎豈啟氣棄訖蘄騏綺榿磧頎頏鰭牽釺鉛遷簽謙錢鉗潛淺譴塹僉蕁慳騫繾槧鈐槍嗆牆薔強搶嬙檣戧熗錆鏘鏹羥蹌鍬橋喬僑翹竅誚譙蕎繰磽蹺竊愜鍥篋欽親寢鋟輕氫傾頃請慶撳鯖瓊窮煢蛺巰賕蟣鰍趨區軀驅齲詘嶇闃覷鴝顴權勸詮綣輇銓卻鵲確闋闕愨讓饒擾繞蕘嬈橈熱韌認紉飪軔榮絨嶸蠑縟銣顰軟銳蜆閏潤灑薩颯鰓賽傘毿糝喪騷掃繅澀嗇銫穡殺剎紗鎩鯊篩曬釃刪閃陝贍繕訕姍騸釤鱔墒傷賞垧殤觴燒紹賒攝懾設厙灄畲紳審嬸腎滲詵諗瀋聲繩勝師獅濕詩時蝕實識駛勢適釋飾視試謚塒蒔弒軾貰鈰鰣壽獸綬樞輸書贖屬術樹豎數攄紓帥閂雙誰稅順說碩爍鑠絲飼廝駟緦鍶鷥聳慫頌訟誦擻藪餿颼鎪蘇訴肅謖穌雖隨綏歲誶孫損筍蓀猻縮瑣鎖嗩睃獺撻闥鉈鰨台態鈦鮐攤貪癱灘壇譚談嘆曇鉭錟頇湯燙儻餳鐋鏜濤絛討韜鋱騰謄銻題體屜緹鵜闐條糶齠鰷貼鐵廳聽烴銅統慟頭鈄禿圖釷團摶頹蛻飩脫鴕馱駝橢籜鼉襪媧膃彎灣頑萬紈綰網輞韋違圍為濰維葦偉偽緯謂衛諉幃闈溈潿瑋韙煒鮪溫聞紋穩問閿瓮撾蝸渦窩卧萵齷嗚鎢烏誣無蕪吳塢霧務誤鄔廡憮嫵騖鵡鶩錫犧襲習銑戲細餼鬩璽覡蝦轄峽俠狹廈嚇硤鮮纖賢銜閑顯險現獻縣餡羨憲線莧薟蘚峴獫嫻鷳癇蚝秈躚廂鑲鄉詳響項薌餉驤緗饗蕭囂銷曉嘯嘵瀟驍綃梟簫協挾攜脅諧寫瀉謝褻擷紲纈鋅釁興陘滎凶洶銹綉饈鵂虛噓須許敘緒續詡頊軒懸選癬絢諼鉉鏇學謔澩鱈勛詢尋馴訓訊遜塤潯鱘壓鴉鴨啞亞訝埡婭椏氬閹煙鹽嚴岩顏閻艷厭硯彥諺驗厴贗儼兗讞懨閆釅魘饜鼴鴦楊揚瘍陽癢養樣煬瑤搖堯遙窯謠葯軺鷂鰩爺頁業葉靨謁鄴曄燁醫銥頤遺儀蟻藝億憶義詣議誼譯異繹詒囈嶧飴懌驛縊軼貽釔鎰鐿瘞艤蔭陰銀飲隱銦癮櫻嬰鷹應纓瑩螢營熒蠅贏穎塋鶯縈鎣攖嚶瀅瀠瓔鸚癭頦罌喲擁佣癰踴詠鏞優憂郵鈾猶誘蕕銪魷輿魚漁娛與嶼語獄譽預馭傴俁諛諭蕷嵛飫閾嫗紆覦歟鈺鵒鷸齬鴛淵轅園員圓緣遠櫞鳶黿約躍鑰粵悅閱鉞鄖勻隕運蘊醞暈韻鄆芸惲慍紜韞殞氳雜災載攢暫贊瓚趲鏨贓臟駔鑿棗責擇則澤賾嘖幘簀賊譖贈綜繒軋鍘閘柵詐齋債氈盞斬輾嶄棧戰綻譫張漲帳賬脹趙詔釗蟄轍鍺這謫輒鷓貞針偵診鎮陣湞縝楨軫賑禎鴆掙睜猙爭幀症鄭證諍崢鉦錚箏織職執紙摯擲幟質滯騭櫛梔軹輊贄鷙螄縶躓躑觶鍾終種腫眾鍾謅軸皺晝驟紂縐豬諸誅燭矚囑貯鑄駐佇櫧銖專磚轉賺囀饌顳樁庄裝妝壯狀錐贅墜綴騅縋諄准著濁諑鐲茲資漬諮緇輜貲眥錙齜鯔蹤總縱傯鄒諏騶鯫詛組鏃鑽纘躦鱒翱並卜沉丑淀迭斗范干皋硅櫃後伙秸傑訣誇里凌么霉捻凄扦聖屍抬塗窪喂污杴咸蠍彝涌游吁御願岳雲灶扎札築於志注凋訁譾郄勐凼坂壠堖垵埝苘蕒葤莜蒓菰藁揸吒唚咔噝咴噘噼嚯襆嶴嵴彷徼獁狍餘餷饊饢愣憷懍丬漵灧溷灠瀦澹甯糹絝緔珉梘桊桉槔櫫軲軤齎肷腖飈煳煅熘愍淼碸磙瞘鈈鉕鋣銱鋥鋶鐦鐧鍩鍀鍃錇鎄鎇鎿钁鑥鑹鑔穭鶓鶥鸌癧痾瘂癯襇襁耮顬蟎麴鮁鮃鯰鯗鯝鯴鱝鯿鰠鰵鱅鞽鞴齇';
}
function ftpYStr(){
return '錒皚藹礙愛噯嬡璦曖靄諳銨鵪骯襖奧媼驁鰲壩罷鈀擺敗唄頒辦絆鈑幫綁鎊謗剝飽寶報鮑鴇齙輩貝鋇狽備憊鵯賁錛綳筆畢斃幣閉蓽嗶潷鉍篳蹕邊編貶變辯辮芐緶籩標驃颮飆鏢鑣鰾鱉別癟瀕濱賓擯儐繽檳殯臏鑌髕鬢餅稟撥缽鉑駁餑鈸鵓補鈽財參蠶殘慚慘燦驂黲蒼艙倉滄廁側冊測惻層詫鍤儕釵攙摻蟬饞讒纏鏟產闡顫囅諂讖蕆懺嬋驏覘禪鐔場嘗長償腸廠暢倀萇悵閶鯧鈔車徹硨塵陳襯傖諶櫬磣齔撐稱懲誠騁棖檉鋮鐺痴遲馳恥齒熾飭鴟沖沖蟲寵銃疇躊籌綢儔幬讎櫥廚鋤雛礎儲觸處芻絀躕傳釧瘡闖創愴錘綞純鶉綽輟齪辭詞賜鶿聰蔥囪從叢蓯驄樅湊輳躥竄攛錯銼鹺達噠韃帶貸駘紿擔單鄲撣膽憚誕彈殫賧癉簞當擋黨盪檔讜碭襠搗島禱導盜燾燈鄧鐙敵滌遞締糴詆諦綈覿鏑顛點墊電巔鈿癲釣調銚鯛諜疊鰈釘頂錠訂鋌丟銩東動棟凍崬鶇竇犢獨讀賭鍍瀆櫝牘篤黷鍛斷緞籪兌隊對懟鐓噸頓鈍燉躉奪墮鐸鵝額訛惡餓諤堊閼軛鋨鍔鶚顎顓鱷誒兒爾餌貳邇鉺鴯鮞發罰閥琺礬釩煩販飯訪紡鈁魴飛誹廢費緋鐨鯡紛墳奮憤糞僨豐楓鋒風瘋馮縫諷鳳灃膚輻撫輔賦復負訃婦縛鳧駙紱紼賻麩鮒鰒釓該鈣蓋賅桿趕稈贛尷擀紺岡剛鋼綱崗戇鎬睾誥縞鋯擱鴿閣鉻個紇鎘潁給亘賡綆鯁龔宮鞏貢鉤溝苟構購夠詬緱覯蠱顧詁轂鈷錮鴣鵠鶻剮掛鴰摑關觀館慣貫詿摜鸛鰥廣獷規歸龜閨軌詭貴劊匭劌媯檜鮭鱖輥滾袞緄鯀鍋國過堝咼幗槨蟈鉿駭韓漢闞絎頡號灝顥閡鶴賀訶闔蠣橫轟鴻紅黌訌葒閎鱟壺護滬戶滸鶘嘩華畫劃話驊樺鏵懷壞歡環還緩換喚瘓煥渙奐繯鍰鯇黃謊鰉揮輝毀賄穢會燴匯諱誨繪詼薈噦澮繢琿暉葷渾諢餛閽獲貨禍鈥鑊擊機積飢跡譏雞績緝極輯級擠幾薊劑濟計記際繼紀訐詰薺嘰嚌驥璣覬齏磯羈蠆躋霽鱭鯽夾莢頰賈鉀價駕郟浹鋏鎵蟯殲監堅箋間艱緘繭檢鹼鹼揀撿簡儉減薦檻鑒踐賤見鍵艦劍餞漸濺澗諫縑戔戩瞼鶼筧鰹韉將漿蔣槳獎講醬絳韁膠澆驕嬌攪鉸矯僥腳餃繳絞轎較撟嶠鷦鮫階節潔結誡屆癤頜鮚緊錦僅謹進晉燼盡勁荊莖巹藎饉縉贐覲鯨驚經頸靜鏡徑痙競凈剄涇逕弳脛靚糾廄舊鬮鳩鷲駒舉據鋸懼劇詎屨櫸颶鉅鋦窶齟鵑絹錈鐫雋覺決絕譎珏鈞軍駿皸開凱剴塏愾愷鎧鍇龕閌鈧銬顆殼課騍緙軻鈳錁頷墾懇齦鏗摳庫褲嚳塊儈鄶噲膾寬獪髖礦曠況誆誑鄺壙纊貺虧巋窺饋潰匱蕢憒聵簣閫錕鯤擴闊蠐蠟臘萊來賴崍徠淶瀨賚睞錸癩籟藍欄攔籃闌蘭瀾讕攬覽懶纜爛濫嵐欖斕鑭襤琅閬鋃撈勞澇嘮嶗銠鐒癆樂鰳鐳壘類淚誄縲籬狸離鯉禮麗厲勵礫歷瀝隸儷酈壢藶蒞蘺嚦邐驪縭櫪櫟轢礪鋰鸝癘糲躒靂鱺鱧倆聯蓮連鐮憐漣簾斂臉鏈戀煉練蘞奩瀲璉殮褳襝鰱糧涼兩輛諒魎療遼鐐繚釕鷯獵臨鄰鱗凜賃藺廩檁轔躪齡鈴靈嶺領綾欞蟶鯪餾劉瀏騮綹鎦鷚龍聾嚨籠壟攏隴蘢瀧瓏櫳朧礱樓婁摟簍僂蔞嘍嶁鏤瘺耬螻髏蘆盧顱廬爐擄鹵虜魯賂祿錄陸壚擼嚕閭瀘淥櫨櫓轤輅轆氌臚鸕鷺艫鱸巒攣孿灤亂臠孌欒鸞鑾掄輪倫侖淪綸論圇蘿羅邏鑼籮騾駱絡犖玀濼欏腡鏍驢呂鋁侶屢縷慮濾綠櫚褸鋝嘸媽瑪碼螞馬罵嗎嘜嬤榪買麥賣邁脈勱瞞饅蠻滿謾縵鏝顙鰻貓錨鉚貿麼沒鎂門悶們捫燜懣鍆錳夢眯謎彌覓冪羋謐獼禰綿緬澠靦黽廟緲繆滅憫閩閔緡鳴銘謬謨驀饃歿鏌謀畝鉬吶鈉納難撓腦惱鬧鐃訥餒內擬膩鈮鯢攆輦鯰釀鳥蔦裊聶嚙鑷鎳隉櫱囁顢躡檸獰寧擰濘薴嚀聹鈕紐膿濃農儂噥駑釹諾儺瘧歐鷗毆嘔漚謳慪甌盤蹣龐拋皰賠轡噴鵬紕羆鈹騙諞駢飄縹頻貧嬪蘋憑評潑頗釙撲鋪朴譜鏷鐠棲臍齊騎豈啟氣棄訖蘄騏綺榿磧頎頏鰭牽釺鉛遷簽謙錢鉗潛淺譴塹僉蕁慳騫繾槧鈐槍嗆牆薔強搶嬙檣戧熗錆鏘鏹羥蹌鍬橋喬僑翹竅誚譙蕎繰磽蹺竊愜鍥篋欽親寢鋟輕氫傾頃請慶撳鯖瓊窮煢蛺巰賕蟣鰍趨區軀驅齲詘嶇闃覷鴝顴權勸詮綣輇銓卻鵲確闋闕愨讓饒擾繞蕘嬈橈熱韌認紉飪軔榮絨嶸蠑縟銣顰軟銳蜆閏潤灑薩颯鰓賽傘毿糝喪騷掃繅澀嗇銫穡殺剎紗鎩鯊篩曬釃刪閃陜贍繕訕姍騸釤鱔墒傷賞坰殤觴燒紹賒攝懾設厙灄畲紳審嬸腎滲詵諗沈聲繩勝師獅濕詩時蝕實識駛勢適釋飾視試謚塒蒔弒軾貰鈰鰣壽獸綬樞輸書贖屬術樹豎數攄紓帥閂雙誰稅順說碩爍鑠絲飼廝駟緦鍶鷥聳慫頌訟誦擻藪餿颼鎪蘇訴肅謖穌雖隨綏歲誶孫損筍蓀猻縮瑣鎖嗩脧獺撻闥鉈鰨台態鈦鮐攤貪癱灘壇譚談嘆曇鉭錟頇湯燙儻餳鐋鏜濤絳討韜鋱騰謄銻題體屜緹鵜闐條糶齠鰷貼鐵廳聽烴銅統慟頭鈄禿圖釷團摶頹蛻飩脫鴕馱駝橢籜鼉襪媧膃彎灣頑萬紈綰網輞韋違圍為濰維葦偉偽緯謂衛諉幃闈溈潿瑋韙煒鮪溫聞紋穩問閿瓮撾蝸渦窩卧萵齷嗚鎢烏誣無蕪吳塢霧務誤鄔廡憮嫵騖鵡鶩錫犧襲習銑戲細餼鬩璽覡蝦轄峽俠狹廈嚇硤鮮纖賢銜閑顯險現獻縣餡羨憲線莧薟蘚峴獫嫻鷳癇蚝秈躚廂鑲鄉詳響項薌餉驤緗饗蕭囂銷曉嘯嘵瀟驍綃梟簫協挾攜脅諧寫瀉謝褻擷紲纈鋅釁興陘滎凶洶銹綉饈鵂虛噓須許敘緒續詡頊軒懸選癬絢諼鉉鏇學謔澩鱈勛詢尋馴訓訊遜塤潯鱘壓鴉鴨啞亞訝埡婭椏氬閹煙鹽嚴岩顏閻艷厭硯彥諺驗厴贗儼兗讞懨閆釅魘饜鼴鴦楊揚瘍陽癢養樣煬瑤搖堯遙窯謠葯軺鷂鰩爺頁業葉靨謁鄴曄燁醫銥頤遺儀蟻藝億憶義詣議誼譯異繹詒囈嶧飴懌驛縊軼貽釔鎰鐿瘞艤蔭陰銀飲隱銦癮櫻嬰鷹應纓瑩螢營熒蠅贏穎塋鶯縈鎣攖嚶瀅瀠瓔鸚癭頦罌喲擁佣癰踴詠鏞優憂郵鈾猶誘蕕銪魷輿魚漁娛與嶼語獄譽預馭傴俁諛諭蕷嵛飫閾嫗紆覦歟鈺鵒鷸齬鴛淵轅園員圓緣遠櫞鳶黿約躍鑰粵悅閱鉞鄖勻隕運蘊醞暈韻鄆芸惲慍紜韞殞氳雜災載攢暫贊瓚趲鏨贓臟駔鑿棗責擇則澤賾嘖幘簀賊譖贈綜繒軋鍘閘柵詐齋債氈盞斬輾嶄棧戰綻譫張漲帳賬脹趙詔釗蟄轍鍺這謫輒鷓貞針偵診鎮陣湞縝楨軫賑禎鴆掙睜猙爭幀症鄭證諍崢鉦錚箏織職執紙摯擲幟質滯騭櫛梔軹輊贄鷙螄縶躓躑觶鍾終種腫眾鍾謅軸皺晝驟紂縐豬諸誅燭矚囑貯鑄駐佇櫧銖專磚轉賺囀饌顳樁庄裝妝壯狀錐贅墜綴騅縋諄准著濁諑鐲茲資漬諮緇輜貲眥錙齜鯔蹤總縱傯鄒諏騶鯫詛組鏃鑽纘躦鱒翺並卜沈丑淀疊斗范干臯矽櫃後夥稭傑訣誇裏淩麽霉捻凄扡聖屍擡塗窪餵污鍁咸蠍彜涌游吁御願岳雲灶扎札築於志注雕訁譾郤猛氹阪壟堖垵墊檾蕒葤蓧蒓菇槁摣吒唚哢噝噅撅劈謔襆嶴脊仿僥獁麅余餷饊饢楞怵懍爿漵灧混濫瀦淡寧糸絝緔瑉梘棬案橰櫫軲軤賫膁腖飈糊煆溜閔渺碸滾瞘鈈鉕鋣銱鋥鋶鐦鐧鍩鍀鍃錇鎄鎇鎿鐝鑥鑹鑔穭鶓鶥鸌癧屙瘂臒襇襁耮顬蟎曲鮁鮃鮎鯗鯝鯴鱝鯿鰠鰵鱅鞽韝齇';
}
function traditionalized(cc){
var str='';
for(var i=0;i<cc.length;i++){
if(charPYStr().indexOf(cc.charAt(i))!=-1)
str+=ftPYStr().charAt(charPYStr().indexOf(cc.charAt(i)));
else
str+=cc.charAt(i);
}
return str;
}
function simplized(cc){
var str='';
for(var i=0;i<cc.length;i++){
if(ftPYStr().indexOf(cc.charAt(i))!=-1)
str+=charPYStr().charAt(ftPYStr().indexOf(cc.charAt(i)));
else
str+=cc.charAt(i);
}
return str;
}
function convert(nOption){
if(nOption==0)
txt.value=simplized(txt.value);
else
txt.value=traditionalized(txt.value);
}
//-->
</script>
</head>
<body>
<table cellSpacing="0" cellPadding="0" width="780" align="center" border="0">
<tr vAlign="bottom" align="left"><td class="title" align="left"><b>www.ip138.com 查詢網</b></td>
<td class="smenu" align="right"><a class="white" href="http://www.ip138.com"
target="_blank"><b>查詢主頁</b></a></td></tr>
<tr vAlign="top" align="left"><td colSpan="2"><hr width="100%" SIZE="1"></td></tr>
</table>
<br/>
<table border="1" bordercolor="#6699CC" cellspacing="0" width="700" align="center" cellpadding="2">
<tr><td valign="top" width="99%" bgcolor="#6699CC"><p align="center"><font color="#FFFFFF"><strong>漢字簡體繁體轉換</strong></font></p></td></tr>
<tr><td height="15" valign="top" width="99%"><div align="center">
<center><br/><input onclick="paste('txt')" type="button" value="粘貼"> <input onclick="convert(0)" type="button" value="轉化為簡體"> <input onclick="convert(1)" type="button" value="轉化為繁體"> <input onclick="('txt')" type="button" value="復制"> <input onclick="cut('txt')" type="button" value="剪切"> <input onclick="txt.value=''" type="button" value="清空"><br/><br/><textarea id="txt" rows="15" cols="80" value=""></textarea><br/><br/></center>
</div></td></tr>
</table>
<span style="display:none"><script src='http://s103.cnzz.com/stat.php?id=396332&web_id=396332' language='JavaScript' charset='gb2312'></script></span>
</body>
</html>
5. 學編程入門
設備:電腦
你既然喜歡編程,就應該認認真真的學習一門語言,學習微軟的就先從VB開始,VB是比較好的入門語言,可視化的,比較簡單,是非常好的入門語言。書籍最少應該准備兩本,不可能一本書籍會包含VB的所有內容,在看書的時候,可以交叉的看,一本書籍中沒有講到的內容可以在另一本中看到,這樣對學習是很有好處的,也能保證所學知識的完整性。學編程是一個很漫長的過程,不要著急,要理論與實踐想結合,常式書籍也是很重要的,看源代碼對學習也是很有幫助的,等你學完這門VB語言之後,學習別的語言是非常簡單,可以嘗試C語言,按照C——C++——VC的順序學習,有助於知識的連貫性,我也希望你能學好的。
或者學習Delphi,入門較為簡單類似於VB,但比VB強大,即可作為入門又能做強、做大
怎樣學編程
1.明確學習目的
學習編程對大多數IT業人員來說都是非常有用的。學編程,做一名編程人員,從個人角度講,可以解決在軟體使用中所遇到的問題,改進現有軟體,可以為自己找到一份理想的工作添加重要得砝碼,有利於在求職道路上謀得一個好的職位;從國家的角度,可以為中國的軟體產業做出應有的貢獻,一名優秀的程序員永遠是被爭奪的對象。學習編程還能鍛煉思維,使我們的邏輯思維更加嚴密;能夠不斷享受到創新的樂趣,將一直有機會走在高科技的前沿,因為程序設計本身是一種創造性的工作。知識經濟時代給我們帶來了無限的機會,要想真正掌握計算機技術,並在IT行業里干出一番事業來,有所作為,具有一定的編程能力是一個基本條件和要求。
2.打好基礎
學編程要具備一定的基礎,總結之有以下幾方面:
(1)數學基礎 從計算機發展和應用的歷史來看計算機的數學模型和體系結構等都是有數學家提出的,最早的計算機也是為數值計算而設計的。因此,要學好計算機就要有一定的數學基礎,出學者有高中水平就差不多了。
(2)邏輯思維能力的培養學程序設計要有一定的邏輯思維能力,「邏思力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。要做到這一點必須在反復的實踐、觀察、分析、比較、總結中逐漸地積累。因此在學習編程過程中,我們不必等到什麼都完全明白了才去動手實踐,只要明白了大概,就要敢於自己動手去體驗。誰都有第一次。有些問題只有通過實踐後才能明白,也只有實踐才能把老師和書上的知識變成自己的,高手都是這樣成材的。
(3)選擇一種合適的入門語言 面對各種各樣的語言,應按什麼樣的順序學呢?程序設計工具不外乎如下幾類: 1)本地開發應用軟體開發的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;資料庫開發工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台開發開發工具如 Java 等。 3)網路開發對客戶端開發工具如:Java Script 等;對伺服器開發工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的環境下幾種開發工具中 VB 法簡單並容易理解,界面設計是可設化的,易學、易用。選 VB 作為入門的方向對出學者是較為適合的。
3. 注意理解一些重要概念
一本程序設計的書看到的無非就是變數、函數、條件語句、循環語句等概念,但要真正能進行編程應用,需要深入理解這些概念,在理解的基礎上應用,不要只簡單地學習語法、結構,而要吃透針對這些語法、結構的應用例子,做到舉一反三,觸類旁通。
4.掌握編程思想
學習一門語言或開發工具,語法結構、功能調用是次要的,最主要是學習它的思想。例如學習 VC 就要學習 Windows 的內在機理、什麼是線程......;學習 COM 就要知道 VTALBE 、類廠、介面、idl......,關鍵是學一種思想,有了思想,那麼我們就可以觸類旁通。
5.多實踐、多交流
掌握編程思想必須在編程實際工作中去實踐和體會。編程起步階段要經常自己動手設計程序,具體設計時不要拘泥於固定的思維方式,遇到問題要多想幾種解決的方案。這就要多交流,各人的思維方式不同、角度各異,各有高招,通過交流可不斷吸收別人的長處,豐富編程實踐,幫助自己提高水平。親自動手進行程序設計是創造性思維應用的體現,也是培養邏輯思維的好方法。
6.養成良好的編程習慣
編程入門不難,但入門後不斷學習是十分重要的,相對來說較為漫長。在此期間要注意養成一些良好的編程習慣。編程風格的好壞很大程度影響程序質量。良好的編程風格可以使程序結構清晰合理,且使程序代碼便於維護。如代碼的縮進編排、變數命令規則的一致性、代碼的注釋等。
7.上網學編程
在網上可以學到很多不同的編程思想、方法、經驗和技巧,有大量的工具和作品及相關的輔導材料供下載。例如網站「編程課堂」(http://best.yeah.net/)主要以 VB 和 Delph;教學和交流為主,提供大量實用技巧;網站「現在時編程學園」(http://pshool.yeah.net/)是專門介紹C、VC、VB、Delphi 等的綜合編程網站;網站「 VB 編程樂園 」(http://www.vbeden.com/)提供內容豐富而且實用的編程技術文章、精選控制項、源代碼下載、計算機考試、相關軟體以及編程書籍推薦等等。
8.加強計算機理論知識的再學習
學編程是符合「理論→實踐→再理論→再實踐」的一個認識過程。一開始要具有一定的計算機理論基礎知識,包括編程所需的數學基礎知識,具備了入門的條件,就可以開始編程的實踐,從實踐中可以發現問題需要加強計算機理論知識的再學習。程序人人皆可編,但當你發現編到一定程度很難再提高的時候,就要回頭來學習一些計算機科學和數學基礎理論。學過之後,很多以前遇到的問題都會迎刃而解,使人有豁然開朗之感。因此在學習編程的過程中要不斷地針對應用中的困惑和問題深入學習數據結構、演算法、計算機原理、編譯原理、操作系統原理、軟體工程等計算機科學的理論基礎和數理邏輯、代數系統、圖論、離散數學等數學理論基礎知識。這樣經過不斷的學習,再努力地實踐,編程水平一定會不斷提高到一個新高度
°heroべ小丟 18:18:18
在我看來,要做一個合格的程序員,你需要具備下面幾個條件:
1. 強烈的好奇心和求知慾
2. 追求完美的精神
3. 良好的邏輯分析能力
其他方面的條件幾乎所有類似的帖子都有提及:如果你不是准備單打獨斗,那麼團隊合作能力必不可少;英語我就懶得說了,沒有基本的閱讀英文資料的能力,我勸你還是打消做個程序員的想法,沒有為什麼;數學能力也是必不可少的,如果不是做演算法,高中水平的數學能力就足夠了,但一定要成績很好才行。
那麼為什麼我要強調上面列的三點呢?
具有強烈的好奇心和求知慾,能夠讓你跟上技術發展的步伐,僅僅靠危機感和責任感,你對技術的學習會有很強的功利性質,導致你的技術體系不能構成一個完整自包容的整體,而且很難對技術有高層次的認識和掌握。
我認識的一個資深系統設計師跟我說過:做軟體,「做出來」和「做的好」完全是兩個概念,所要求的投入和技術水平是天壤之別。現在國內很多程序員僅僅把軟體開發當作養家糊口的謀生手段,國內計劃經濟時代湊合、馬馬虎虎幹活的思想也滲透到了軟體業,很多程序員僅僅是把功能做出來,根本不會去考慮提高重用性、可維護性,也不會去考慮提高穩定性、運行速度,甚至連代碼也是亂七八糟,基本的編碼規范都不遵守(在我看來,這樣的人不配「程序員」這個稱號),在我們大聲譴責國內軟體業環境不好,拉項目靠關系,沒有質量保證體系,老闆不重視程序員,瘋狂剝削程序員的時候,我們是不是該問問自己,你是不是只把眼睛盯著別人?
現在各種軟體開發包應有盡有,包羅萬象,編程工具也異常強大方便,對於國內佔主流的MIS系統來說,要完成一個功能實在不是很難的事情,但是如果把系統做為一個整體,則大多數都是運行緩慢、佔用資源過大、兼容性差、可維護性差、不穩定的系統,你可曾嘗試過開發一個優秀的系統,如果有,你就會發現開發優秀軟體是多麼困難,對技術的要求是多麼高,而你在努力做到完美的過程中水平的提升是多麼快。沒有追求完美的精神,無論外部環境如何好,你也是不會開發出優秀軟體的,等待你的是無休止的修改和維護~,你的技術水平也永遠停留在簡單的編碼階段,最終只有被迫轉行。
好了,我真的適合當個程序員,那我該如何開始?
首先選擇一門編程語言和操作系統平台。
操作系統平台國內比較流行的基本有Windows、Linux(Unix)、Mac OS。一般來說大家都選擇的是Windows平台,因為此平台是國內處於壟斷地位的操作系統,而且有很多優秀的開發工具可供選擇,缺點就是Windows 平台的開放性不高,往底層探究比較困難(但我對於言必稱底層的觀點比較反感,不是所有搞開發的都要對底層非常了解,做出用戶滿意的系統才是我們追求的根本,玩些底層的trick只是一種自我滿足罷了。當然我們需要有一些掌握底層技術的高手,但這個是個人選擇的問題),而且用慣Windows的程序員在配置、腳本等方面比較弱。Linux是開源平台,當然從理論上你可以操縱Linux的一切,但是有幾個人能夠達到這一水平?剛剛開始學習開發的程序員,在 Linux上也僅僅能夠開發一些應用軟體罷了。Linux下的開發工具不夠人性化,但這種情況正在逐步得到緩解,Eclipse就是非常出色的開發平台。在Linux下開發,你可以得到大量優秀的源代碼,並且一切都是透明的(只要你想),但你必須學習很多命令行指令,掌握各種系統和參數配置以及腳本方面的知識。
編程語言的選擇更是令人頭痛,我涉獵不多,對於有些語言,我無法給出任何建議,只好等這方面的高手來給大家補充了。我僅僅對C++和Java進行一些說明,當然這個也僅僅是基於個人體會,絕對不是權威觀點 :P
C++仍然是目前佔主流的開發語言(詳細的可以閱讀TCPL中的相關論述),而且一種語言的發展或消亡都是一個漸進的過程,在可以預見的將來,C ++仍然是一門舉足輕重的開發語言,但其所針對的領域和方向可能會有所調整,我認為最主要的變化是C++會逐步從商業MIS系統市場上退出。選擇C++的理由是關於C++的優秀開發書籍和開發工具最多,相關的資源也異常豐富,待對於一般應用程序的開發掌握之後,無需過渡,就可以深入學習各種技術,因為現階段講述系統底層奧秘和高級技術的書籍,基本都是選用C\C++做為示例語言。加上微軟精心打造的開發平台Visual Studio或Borland的C++ Builder系列,學習起來更是如虎添翼。但C++現在的缺點也是比較明顯的,我最深的感觸就是對於XP和Agile Development的支持不好。
Java簡化了C++的語法,學習起來比較容易(但隨著Java的日益普及和發展,是否能夠繼續保持這一優勢,我不敢斷言),Eclipse 是非常優秀的Java開發平台,支持XP的整個過程:設計、測試、編碼、重構……現階段敏捷軟體開發的主要語言就是Java。而且Java的跨平台特性更是非常大的優勢。
實際上,選擇哪門語言都沒有關系,根據你的發展規劃和目前身邊的環境選擇就可以,沒有必要跟風,其後的堅持才是難點。
好,假設你選擇了C++做為開發語言,在Windows平台上開發,那麼我給你如下的學習建議(其他的選擇請各位積極補充……):
C++語言的學習當然是基礎,這個階段由於沒有任何在特定平台上的開發經驗,我們只能按照書中的例子一個一個輸入運行,暫時告別熟悉的圖形界面,回到古老的DOS了。參考書的選擇是這個階段很多朋友關心的,Stan Lippman的《Essential C++》和《C++ Primer》是我優先推薦的,而《Essential C++》因為篇幅較小,講解內容適當,而且對C++ STL的運用有不少描述,顯得相當實用,我認為最適合初學者使用。無論選擇了那本書做為入門教材,都應該逐個例子逐個例子的消化,不要貪快,但同時要對重點內容有所側重。我們學習任何東西都是為了解決實際問題,所以請把重點放在我們實際中最常用的部分,而不要過多的追究一些細節和艱深晦澀的不常用技術。
此刻我們會碰到很多過後看來非常簡單幼稚的問題,比如為什麼編譯出錯,為什麼按照書中的例子輸進去卻無法通過編譯,找不到頭文件等等,大體上這是因為剛剛接觸程序開發,對程序理解還很初級,以及對於所使用的開發環境不夠了解,特定編譯器對標准C++的支持程度不一導致。請多閱讀關於所使用開發環境的各種文檔,以及查閱幫助文檔。以我最經常使用的Visual C++配合MSDN來說,當出現一個我不能理解的編譯錯誤時,按F4鍵編輯器就會自動跳到當前錯誤地點,下面的輸出窗口也會給出錯誤代碼(比如C××× ×),把錯誤代碼記下,打開MSDN,在索引一欄輸入錯誤代碼,就能夠查到詳細的關於此錯誤的說明,當然,是英文的(不要問你不會英文怎麼辦,這是基本要求)。現在的開發工具查錯排錯非常方便。當然,有時很多錯誤原因並不是編譯器所提示的地方,而是往前或往後一些地方,長期的編程經驗可以提高查錯速度。此時也請多練習練習Debug技術。
此階段只要能夠掌握C++的基本語言要素,對結構化程序設計和基於對象的設計有一定理解,能夠完成一些簡單的小程序就可以結束了,畢竟DOS 程序現在很難勾起我們學習的慾望了 :P 在此之後可以視自己的情況決定是否學習數據結構,數據結構是程序員的必修課,不可或缺,地位非常重要,即使你現在希望馬上進入圖形界面程序開發的世界,這一課我也提醒你記著早點補上。
終於可以邁入圖形世界,我們要從SDK編程開始,不要擔心,這不會花費你太長時間,但卻是對Windows程序運行機制進行深入了解的好時機,在此的努力都不會白費(trust me),此時的參考書沒有什麼好考慮的,基礎的有Charles Petzold的《Windows程序設計》,進階的有《Windows核心編程》。請從《Windows程序設計》開始,Charles Petzold的書通俗易懂,學習起來非常輕松,而且對你的語言要求不高,只要懂C就可以了。
此時容易碰到的問題大多與項目設置有關,如果使用Visual C++,請按Alt+F7調出項目設置對話框仔細檢查,並閱讀相關文檔,熟悉各項配置的意義。
此階段請重點掌握Windows SDK程序的編寫方法,Windows程序的運行機制和Windows消息機制,和常用的Windows API。我們還可以更進一步:嘗試用前一階段學到的C++知識對過程化的SDK程序進行初步的改造,將我們敲入計算機的程序變得可重用,按照自己對基於對象思想和面向對象思想的理解來重新編寫例子程序。
OK,現在你已經初步入門了,掌握了C++的基本用法,對面向對象有了一點模糊而自以為是的認識,也能夠寫出Windows程序了,雖然還有點簡單,還有點醜陋,不過,總歸是圖形界面啊。開始有點感覺了,是嗎? :P 別急著往前沖,停一停,將C++和Windows SDK的基礎打牢,貪多嚼不爛嗎。此時有很多經典書籍等待你去掌握,也有幾乎無限的題材供你練習,請盡量多閱讀接觸下面的資源:
《C++ Primer》
《Windows核心編程》
《應用程序調試技術》
面向對象開發設計方面的書籍
MSDN的Platform SDK部分,Periodicals部分(包含了大量有價值C++、SDK方面的技術文章)
°heroべ小丟 18:18:20
CodeProject里相關的源代碼是很好的補充學習資料
現在繼續往前走吧,利用SDK開發畢竟有時太過於費時費力,還是使用更高級的應用程序開發框架的好,主要的有MFC和VCL,關於這些框架誰好誰壞的爭論我已經聽煩了,一句話,能幫助我們完成任務就行,它們無非都是工具,你自己隨便選擇吧。不過選擇好之後,你應該明白,對於你的工具,了解越深,越能發揮它的威力。如果你選擇了MFC,我建議學習下面的書籍:
《深入淺出MFC》:關於此書毋庸多說,盡管有人不停的貶低,但它的地位是無可置疑的,而且也是對我最有幫助的書籍之一。
《MFC程序設計》
《Visual C++技術內幕》
然後就停止找書吧,網上開發站點的數不勝數的源代碼就是最好的老師了……
學習過程中碰到問題我該怎麼辦?
我始終認為學習軟體開發過程中遇到的問題只有自己盡最大的努力去解決,才能收到最大的成效,對於那些動不動就把問題發到網上指望高手幫你解決的做法我非常不贊同,因為這樣你並不能從中學到多少。我建議的做法是,首先嘗試自己獨力解決問題,花幾個小時解決一個問題,是很正常的,不要幾分鍾解決不了就放棄了;實在無法解決的時候,請嘗試盡量減小涉及范圍,將問題歸結一下,初步形成自己的結論;然後利用搜索引擎或者開發論壇中的搜索功能來搜索是否有對於自己問題的解答;實在沒有的時候,再發帖子求助。請了解一點:你遇到的問題都是別人遇到過的,網上肯定有現成的解決方法(因為你還沒有到開發研究前所未有的問題的水平:P),只看你找不找得到了,請盡力去利用現有的資源而不是麻煩別人。
CSDN的論壇、MSDN在線文檔都是非常好的資源,基本上我們遇到的問題在這里都能找到解答。
6. 誰知道《戲言》的男主角到底叫什麼!
轉:輕國那裡的翻譯:http://www.lightnovel.cn/viewthread.php?tid=105381&extra=page%3D1&page=1
……首先需要向大家說明的是,這個帖子原來是發在 零崎無識 同學的戲言推廣站上的。
隨著去年推廣站的浮雲,帖子也一起浮雲了——然後,就在今天,這帖子將復活於輕國。
順帶一提,無識同學告訴我推廣站也已經復活了!!!(就是這帖子沒處找了)TAT
進入主題之前,先向大家致歉的是:
1.當年老貼裡面的日文原文早已沒了,我手頭只有自己翻譯的版本了;
2.本人日語實在不過硬,翻的只是大意,和輕國的諸位高手不能比……
3。這是個網友推理版,並不代表官方哦 !
那麼,大家就將就看一下吧,(說實話,我以為 這個推理稱得上是 絕 妙 邏 輯 了。。。)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
那麼,上正文……
首先,作者引用阿咿原句「叫過我的本名的只有三人而已。」
隨後,作者說這是不可能的。 因為,在大學、醫院、墮落三昧的研究院均有阿咿的本名出現, 叫出這個名字不可避免……比如,大學教授點名==
『表の日常』で使用していた名前(以下では『表名』と表記します)』と、
『裏の日常』で使用していた名前(以下では『裏名』と表記します)』の2つを保有していた
隨後,作者提出觀點——阿咿持有2個名字(表名/里名),平時使用的是表名, 而說出口就會帶來不祥的是 里名 。。。
接下來分析在 子狄 的三題姓名quiz 里出現的是表名還是里名呢?
(這個變態的考據狂……)
我就跳過分析, 作者相信 quiz中出現的是 里名。
而 里名 並非阿咿的原名, 而是類似 零崎人識(真名汀目俊希) 這樣的 特別代號
所以不必含有妹妹姓氏 「井伊」……
接下來是精彩部分……
僅僅依靠quiz中出現的3個線索, 子狄為何能夠成功推導阿咿的真名?
作者大膽假設,這個假設就是 子狄獲得了3個線索以外的線索
舉例來說 猜測匂宮、暗口、時宮 這些里世界人名的時候,就已經確定了他們的姓氏!!
而阿咿的 「里名」 ,與玖渚集團有關!
A.
從人識角度考據, 阿咿與人識系 鏡面關系
零崎 —— 阿咿
0 —— 1
B.
從玖渚角度考據
玖渚機關下屬有一到八的 家系
姑且推測 阿咿的 里名 姓氏就是源自其中代表 「1」的那個——壱外
引用子狄語——
『いがキーワードなんですか?』
『それは質問?』
『いえ、ただの確認ですよ』
C.
從子狄推理的角度考據。
子狄這句 「關鍵字是「伊」嗎?」 ——大有深意!!!
此前,子狄對阿咿的了解僅有一長串的nickname
以及 阿咿與玖渚機關有聯系(怎麼了解到的請問原文作者……)
而玖渚機關 下屬名 正是從
一※i
二※ni
三※san ……這樣排列下去的
也就是說,當子狄確信 阿咿的關鍵字是 「i」 的時候,就可以推斷 阿咿的姓氏
壱外 了!!
——子狄之所以能夠更成功推理,因為她把握了一個前提,那就是 鑒於阿咿與玖渚機關的聯系 如果關鍵字是「i」 本名必然是壱外 ;而如果關鍵字是 「san」 ,那麼同樣推理本姓為 弐栞!!
——這樣反過來就成為了 我們確定 阿咿本名的線索!
這里有一個假設前提:
按照給出的3條線索——》真名推出不能(有百萬種可能……)
子狄成功推出真名——》子狄掌握額外線索(能夠縮小范圍)
子狄對阿咿幾乎一無所知——》額外線索 局限在玖渚機關相關(別的子狄無從了解,但是著名機關的姓氏 子狄一定了解)
阿咿報出關鍵字「i」——》 子狄推理 本姓——壱外
以上,就確定了 阿咿的里名姓氏——壱外
接下來是名字部分……
作者認為,西尾取的名字往往有很強的象徵意義
根據阿咿的關鍵字,
?戱言遣い?欠陥製品?語り部?傍観者?主人公?無為式
以及結合考慮子狄三題quiz ,(都是好埛的名字……)
壱外 禁句郎(きんくろう)
(『戱言遣い』や、『名前を呼んだ人間は死んだ』というイメージから)
壱外 真友無(まともな)
(『欠陥製品』なのに『まとも』という皮肉と、真の友は無い(玖渚友以外)というイメージから)
壱外 黃泉彥(よみひこ)
(『死線を越えた』と、兎吊木に言われてたから)
壱外 賜(たまもの)
(『與えるのか、奪うのか』と本人が何回か言ってたから)
壱外 別語(わかたる)
(物語を語り終えるようなイメージと、『クビツリ』で姫ちゃんに殺されかけてたときの様子から、名前を教える=さよなら? というイメージがあったから)
壱外 無精神(むせいしん)
(『ぼくには心が無い』と言ってたから)
とか、色々と考えた結果、
壱外 人物(ひともの)
這就是作者認為最像的名字了。
物——暗喻不良製品 人——呼應零崎的「殺人鬼」
然後,『壱外 人物』=『位置外 人物』(相信我,發音真的一樣……)——劇情旁白/旁觀者
以上,阿咿得名壱外 人物。
更牛的來了……
根據西尾里名的命名法, 里名 一定含有 表名 的文字元素……
(開 始 倒 推 表名了……)
我引、我引引引……
『汀目俊希(みぎわめ としき)』=『零崎人識(ぜろざき ひとしき)』
『無桐伊織(むとう いおり)』=『零崎舞織(ぜろざき まいおり)』
『式岸軋騎(しきぎし きしき)』=『零崎軋式(ぜろざき きししき)』
那麼,阿咿的表名是什麼捏?(姓氏井伊 已判定……)
引用——
「仆のことは友って呼んでいいんだよ」
「それじゃあ仆のことも友って呼んで良いぜ」
「ややこしいよ。仆はきみのことをいーちゃんって呼ぶことにするよ」
「じゃあぼくもきみのことをいーちゃんと呼ぼう」
這段文字就是阿咿和小友初遇時候……
友:叫我小友就好
一:那你也叫我小友好了!
友:誒喲,會搞混的。那我叫你阿咿了
一:那我也叫你阿咿咯
就是這段。作者分析,本名 也許含有「友(とも)」字。。。
也就是 井伊X友
or
井伊友X
接下來,結合從 里名 「壱外人物」(ひともの)
『生來の名前』+『1文字』=『ひともの』
『ひともの』-『1文字』=『生來の名前
可能性就剩下兩種了——『井伊 ひとも』
or
『井伊 ともの』
『ひとも』的話就是『井伊 日友』、或者是『井伊 非友』
『ともの』的話就是『井伊 友野』
最後,考慮和妹妹『井伊 遙奈』名字的搭配性
已經人識名字零崎人識と同様に「ひ」になるところから
(說實話這里沒看懂……)
當當當——!!
作者的結論——井伊 友野!
好了,解說完畢。雖然瑕疵是明顯地,不過的確是很強的推理了。我就此膜拜一下……
7. 計算機的埠地址是什麼意思比如列印機的數據輸出埠
計算機"埠"是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬體領域的埠又稱介面,如:USB埠、串列埠等。軟體領域的埠一般指網路中面向連接服務和無連接服務的通信協議埠,是一種抽象的軟體結構,包括一些數據結構和I/O(基本輸入輸出)緩沖區。
網路中可以被命名和定址的通信埠是操作系統的一種可分配資源。由網路OSI(開放系統互聯參考模型,)七層協議可知,傳輸層與網路層最大的區別是傳輸層提供進程通信能力,網路通信的最終地址不僅包括主機地址,還包括可描述進程的某種標識。所以TCP/IP協議提出的協議埠,可以認為是網路通信進程的一種標識符。
應用程序(調入內存運行後一般稱為:進程)通過系統調用與某埠建立連接(binding,綁定)後,傳輸層傳給該埠的數據都被相應的進程所接收,相應進程發給傳輸層的數據都從該埠輸出。在TCP/IP協議的實現中,埠操作類似於一般的I/O操作,進程獲取一個埠,相當於獲取本地唯一的I/O文件,可以用一般的讀寫方式訪問類似於文件描述符,每個埠都擁有一個叫埠號的整數描述符,用來區別不同的埠。由於TCP/IP傳輸層的TCP和UDP兩個協議是兩個完全獨立的軟體模塊,因此各自的埠號也相互獨立。如TCP有一個255號埠,UDP也可以有一個255號埠,兩者並不沖突。埠號有兩種基本分配方式:第一種叫全局分配這是一種集中分配方式,由一個公認權威的中央機構根據用戶需要進行統一分配,並將結果公布於眾,第二種是本地分配,又稱動態連接,即進程需要訪問傳輸層服務時,向本地操作系統提出申請,操作系統返回本地唯一的埠號,進程再通過合適的系統調用,將自己和該埠連接起來(binding,綁定)。TCP/IP埠號的分配綜合了以上兩種方式,將埠號分為兩部分,少量的作為保留埠,以全局方式分配給服務進程。每一個標准伺服器都擁有一個全局公認的埠叫周知口,即使在不同的機器上,其埠號也相同。剩餘的為自由埠,以本地方式進行分配。TCP和UDP規定,小於256的埠才能作為保留埠。
按埠號可分為3大類:
(1)公認埠(WellKnownPorts):從0到1023,它們緊密綁定(binding)於一些服務。通常這些埠的通訊明確表明了某種服務的協議。例如:80埠實際上總是HTTP通訊。
(2)注冊埠(RegisteredPorts):從1024到49151。它們鬆散地綁定於一些服務。也就是說有許多服務綁定於這些埠,這些埠同樣用於許多其它目的。例如:許多系統處理動態埠從1024左右開始。
(3)動態和/或私有埠(Dynamicand/orPrivatePorts):從49152到65535。理論上,不應為服務分配這些埠。實際上,機器通常從1024起分配動態埠。但也有例外:SUN的RPC埠從32768開始。
系統管理員可以"重定向"埠:一種常見的技術是把一個埠重定向到另一個地址。例如默認的HTTP埠是80,不少人將它重定向到另一個埠,如8080。如果是這樣改了,要訪問本文就應改用這個地址http://wwd.3322.net:8080/net/port.htm(當然,這僅僅是理論上的舉例)。實現重定向是為了隱藏公認的默認埠,降低受破壞率。這樣如果有人要對一個公認的默認埠進行攻擊則必須先進行埠掃描。大多數埠重定向與原埠有相似之處,例如多數HTTP埠由80變化而來:81,88,8000,8080,8888。同樣POP的埠原來在110,也常被重定向到1100。也有不少情況是選取統計上有特別意義的數,象1234,23456,34567等。許多人有其它原因選擇奇怪的數,42,69,666,31337。近來,越來越多的遠程式控制制木馬(RemoteAccessTrojans,RATs)採用相同的默認埠。如NetBus的默認埠是12345。BlakeR.Swopes指出使用重定向埠還有一個原因,在UNIX系統上,如果你想偵聽1024以下的埠需要有root許可權。如果你沒有root許可權而又想開web服務,你就需要將其安裝在較高的埠。此外,一些ISP的防火牆將阻擋低埠的通訊,這樣的話即使你擁有整個機器你還是得重定向埠。
計算機常用埠一覽表:
1 傳輸控制協議埠服務多路開關選擇器
2 compressnet 管理實用程序
3 壓縮進程
5 遠程作業登錄
7 回顯(Echo)
9 丟棄
11 在線用戶
13 時間
15 netstat
17 每日引用
18 消息發送協議
19 字元發生器
20 文件傳輸協議(默認數據口)
21 文件傳輸協議(控制)
22 SSH遠程登錄協議
23 telnet 終端模擬協議
24 預留給個人用郵件系統
25 smtp 簡單郵件發送協議
27 NSW 用戶系統現場工程師
29 MSG ICP
31 MSG驗證
33 顯示支持協議
35 預留給個人列印機服務
37 時間
38 路由訪問協議
39 資源定位協議
41 圖形
42 WINS 主機名服務
43 "綽號" who is服務
44 MPM(消息處理模塊)標志協議
45 消息處理模塊
46 消息處理模塊(默認發送口)
47 NI FTP
48 數碼音頻後台服務
49 TACACS登錄主機協議
50 遠程郵件檢查協議
51 IMP(介面信息處理機)邏輯地址維護
52 施樂網路服務系統時間協議
53 域名伺服器
54 施樂網路服務系統票據交換
55 ISI圖形語言
56 施樂網路服務系統驗證
57 預留個人用終端訪問
58 施樂網路服務系統郵件
59 預留個人文件服務
60 未定義
61 NI郵件?
62 非同步通訊適配器服務
63 WHOIS+
64 通訊介面
65 TACACS資料庫服務
66 Oracle SQL*NET
67 引導程序協議服務端
68 引導程序協議客戶端
69 小型文件傳輸協議
70 信息檢索協議
71 遠程作業服務
72 遠程作業服務
73 遠程作業服務
74 遠程作業服務
75 預留給個人撥出服務
76 分布式外部對象存儲
77 預留給個人遠程作業輸入服務
78 修正TCP
79 Finger(查詢遠程主機在線用戶等信息)
80 全球信息網超文本傳輸協議(www)
81 HOST2名稱服務
82 傳輸實用程序
83 模塊化智能終端ML設備
84 公用追蹤設備
85 模塊化智能終端ML設備
86 Micro Focus Cobol編程語言
87 預留給個人終端連接
88 Kerberros安全認證系統
89 SU/MIT終端模擬網關
90 DNSIX 安全屬性標記圖
91 MIT Dover假離線
92 網路列印協議
93 設備控制協議
94 Tivoli對象調度
95 SUPDUP
96 DIXIE協議規范
97 快速遠程虛擬文件協議
98 TAC(東京大學自動計算機)新聞協議
101 usually from sri-nic
102 iso-tsap
103 ISO Mail
104 x400-snd
105 csnet-ns
109 Post Office
110 Pop3 伺服器(郵箱發送伺服器)
111 portmap 或 sunrpc
113 身份查詢
115 sftp
117 path 或 uucp-path
119 新聞伺服器
121 BO jammerkillah
123 network time protocol (exp)
135 DCE endpoint resolutionnetbios-ns
137 NetBios-NS
138 NetBios-DGN
139 win98 共享資源埠(NetBios-SSN)
143 IMAP電子郵件
144 NeWS - news
153 sgmp - sgmp
158 PCMAIL
161 snmp - snmp
162 snmp-trap -snmp
170 network PostScript
175 vmnet
194 Irc
315 load
400 vmnet0
443 安全服務
456 Hackers Paradise
500 sytek
512 exec
513 login
514 shell - cmd
515 printer - spooler
517 talk
518 ntalk
520 efs
526 tempo - newdate
530 courier - rpc
531 conference - chat
532 netnews - readnews
533 netwall
540 uucp - uucpd 543 klogin
544 kshell
550 new-rwho - new-who
555 Stealth Spy(Phase)
556 remotefs - rfs_server
600 garcon
666 Attack FTP
750 kerberos - kdc
751 kerberos_master
754 krb_prop
888 erlogin
1001 Silencer 或 WebEx
1010 Doly trojan v1.35
1011 Doly Trojan
1024 NetSpy.698 (YAI)
1025 NetSpy.698
1033 Netspy
1042 Bla1.1
1047 GateCrasher
1080 Wingate
1109 kpop
1243 SubSeven
1245 Vodoo
1269 Maverick s Matrix
1433 Microsoft SQL Server 資料庫服務
1492 FTP99CMP (BackOriffice.FTP)
1509 Streaming Server
1524 ingreslock
1600 Shiv
1807 SpySender
1981 ShockRave
1999 Backdoor
2000 黑洞(木馬) 默認埠
2001 黑洞(木馬) 默認埠
2023 Pass Ripper
2053 knetd
2140 DeepThroat.10 或 Invasor
2283 Rat
2565 Striker
2583 Wincrash2
2801 Phineas
3129 MastersParadise.92
3150 Deep Throat 1.0
3210 SchoolBus
3389 Win2000 遠程登陸埠
4000 OICQ Client
4567 FileNail
4950 IcqTrojan
5000 WindowsXP 默認啟動的 UPNP 服務
5190 ICQ Query
5321 Firehotcker
5400 BackConstruction1.2 或 BladeRunner
5550 Xtcp
5555 rmt - rmtd
5556 mtb - mtbd
5569 RoboHack
5714 Wincrash3
5742 Wincrash
6400 The Thing
6669 Vampire
6670 Deep Throat
6711 SubSeven
6713 SubSeven
6767 NT Remote Control
6771 Deep Throat 3
6776 SubSeven
6883 DeltaSource
6939 Indoctrination
6969 Gatecrasher.a
7306 網路精靈(木馬)
7307 ProcSpy
7308 X Spy
7626 冰河(木馬) 默認埠
7789 ICQKiller
8000 OICQ Server
9400 InCommand
9401 InCommand
9402 InCommand
9535 man
9536 w
9537 mantst
9872 Portal of Doom
9875 Portal of Doom
9989 InIkiller
10000 bnews
10001 queue
10002 poker
10167 Portal Of Doom
10607 Coma
11000 Senna Spy Trojans
11223 ProgenicTrojan
12076 Gjamer 或 MSH.104b
12223 Hack?9 KeyLogger
12345 netbus木馬 默認埠
12346 netbus木馬 默認埠
12631 WhackJob.NB1.7
16969 Priotrity
17300 Kuang2
20000 Millenium II (GrilFriend)
20001 Millenium II (GrilFriend)
20034 NetBus Pro
20331 Bla
21554 GirlFriend 或 Schwindler 1.82
22222 Prosiak
23456 Evil FTP 或 UglyFtp 或 WhackJob
27374 SubSeven
29891 The Unexplained
30029 AOLTrojan
30100 NetSphere
30303 Socket23
30999 Kuang
31337 BackOriffice
31339 NetSpy
31666 BO Whackmole
31787 Hack a tack
33333 Prosiak
33911 Trojan Spirit 2001 a
34324 TN 或 Tiny Telnet Server
40412 TheSpy
40421 MastersParadise.96
40423 Master Paradise.97
47878 BirdSpy2
50766 Fore 或 Schwindler
53001 Remote Shutdown
54320 Back Orifice 2000
54321 SchoolBus 1.6
61466 Telecommando
65000 Devil
計算機「埠」是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬體領域的埠又稱介面,如:USB埠、串列埠等。軟體領域的埠一般指網路中面向連接服務和無連接服務的通信協議埠,是一種抽象的軟體結構,包括一些數據結構和I/O(基本輸入輸出)緩沖區。
按埠號可分為3大類:
(1)公認埠(Well Known Ports):從0到1023,它們緊密綁定(binding)於一些服務。通常這些埠的通訊明確表明了某種服務的協議。例如:80埠實際上總是HTTP通訊。
(2)注冊埠(Registered Ports):從1024到49151。它們鬆散地綁定於一些服務。也就是說有許多服務綁定於這些埠,這些埠同樣用於許多其它目的。例如:許多系統處理動態埠從1024左右開始。
(3)動態和/或私有埠(Dynamic and/or Private Ports):從49152到65535。理論上,不應為服務分配這些埠。實際上,機器通常從1024起分配動態埠。但也有例外:SUN的RPC埠從32768開始。
一些埠常常會被黑客利用,還會被一些木馬病毒利用,對計算機系統進行攻擊,以下是計算機埠的介紹以及防止被黑客攻擊的簡要辦法。
8080埠
埠說明:8080埠同80埠,是被用於WWW代理服務的,可以實現網頁瀏覽,經常在訪問某個網站或使用代理伺服器的時候,會加上「:8080」埠號,比如http://www.cce.com.cn:8080。
埠漏洞:8080埠可以被各種病毒程序所利用,比如Brown Orifice(BrO)特洛伊木馬病毒可以利用8080埠完全遙控被感染的計算機。另外,RemoConChubo,RingZero木馬也可以利用該埠進行攻擊。
操作建議:一般我們是使用80埠進行網頁瀏覽的,為了避免病毒的攻擊,我們可以關閉該埠。
埠:21
服務:FTP
說明:FTP伺服器所開放的埠,用於上傳、下載。最常見的攻擊者用於尋找打開anonymous的FTP伺服器的方法。這些伺服器帶有可讀寫的目錄。木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的埠。
埠:22
服務:Ssh
說明:PcAnywhere建立的TCP和這一埠的連接可能是為了尋找ssh。這一服務有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞存在。
埠:23
服務:Telnet
說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務。大多數情況下掃描這一埠是為了找到機器運行的操作系統。還有使用其他技術,入侵者也會找到密碼。木馬Tiny Telnet Server就開放這個埠。
埠:25
服務:SMTP
說明:SMTP伺服器所開放的埠,用於發送郵件。入侵者尋找SMTP伺服器是為了傳遞他們的SPAM。入侵者的帳戶被關閉,他們需要連接到高帶寬的E-MAIL伺服器上,將簡單的信息傳遞到不同的地址。木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個埠。
埠:80
服務:HTTP
說明:用於網頁瀏覽。木馬Executor開放此埠。
埠:102
服務:Message transfer agent(MTA)-X.400 over TCP/IP
說明:消息傳輸代理。
埠:109
服務:Post Office Protocol -Version3
說明:POP3伺服器開放此埠,用於接收郵件,客戶端訪問伺服器端的郵件服務。POP3服務有許多公認的弱點。關於用戶名和密碼交 換緩沖區溢出的弱點至少有20個,這意味著入侵者可以在真正登陸前進入系統。成功登陸後還有其他緩沖區溢出錯誤。
埠:110
服務:SUN公司的RPC服務所有埠
說明:常見RPC服務有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等
埠:119
服務:Network News Transfer Protocol
說明:NEWS新聞組傳輸協議,承載USENET通信。這個埠的連接通常是人們在尋找USENET伺服器。多數ISP限制,只有他們的客戶才能訪問他們的新聞組伺服器。打開新聞組伺服器將允許發/讀任何人的帖子,訪問被限制的新聞組伺服器,匿名發帖或發送SPAM。
埠:135
服務:Location Service
說明:Microsoft在這個埠運行DCE RPC end-point mapper為它的DCOM服務。這與UNIX 111埠的功能很相似。使用DCOM和RPC的服務利用計算機上的end-point mapper注冊它們的位置。遠端客戶連接到計算機時,它們查找end-point mapper找到服務的位置。HACKER掃描計算機的這個埠是為了找到這個計算機上運行Exchange Server嗎?什麼版本?還有些DOS攻擊直接針對這個埠。
埠:137、138、139
服務:NETBIOS Name Service
說明:其中137、138是UDP埠,當通過網上鄰居傳輸文件時用這個埠。而139埠:通過這個埠進入的連接試圖獲得NetBIOS/SMB服務。這個協議被用於windows文件和列印機共享和SAMBA。還有WINS Regisrtation也用它。
埠:161
服務:SNMP
說明:SNMP允許遠程管理設備。所有配置和運行信息的儲存在資料庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統。他們可能會試驗所有可能的組合。SNMP包可能會被錯誤的指向用戶的網路
什麼是埠?
在開始講什麼是埠之前,我們先來聊一聊什麼是 port 呢?常常在網路上聽說『我的主機開了多少的 port ,會不會被入侵呀!?』或者是說『開那個 port 會比較安全?又,我的服務應該對應什麼 port 呀!?』呵呵!很神奇吧!怎麼一部主機上面有這么多的奇怪的 port 呢?這個 port 有什麼作用呢?!
由於每種網路的服務功能都不相同,因此有必要將不同的封包送給不同的服務來處理,所以啰,當你的主機同時開啟了 FTP 與 WWW 服務的時候,那麼別人送來的資料封包,就會依照 TCP 上面的 port 號碼來給 FTP 這個服務或者是 WWW 這個服務來處理,當然就不會搞亂啰!(註:嘿嘿!有些很少接觸到網路的朋友,常常會問說:『咦!為什麼你的計算機同時有 FTP、WWW、E-Mail 這么多服務,但是人家傳資料過來,你的計算機怎麼知道如何判斷?計算機真的都不會誤判嗎?!』現在知道為什麼了嗎?!對啦!就是因為 port 不同嘛!你可以這樣想啦,有一天,你要去銀行存錢,那個銀行就可以想成是『主機』,然後,銀行當然不可能只有一種業務,里頭就有相當多的窗口,那麼你一進大門的時候,在門口的服務人員就會問你說:『嗨!你好呀!你要做些什麼事?』你跟他說:『我要存錢呀!』,服務員接著就會告訴你:『喝!那麼請前往三號窗口!那邊的人員會幫您服務!』這個時候你總該不會往其它的窗口跑吧?! ""這些窗口就可以想成是『 port 』啰!所以啦!每一種服務都有特定的 port 在監聽!您無須擔心計算機會誤判的問題呦!)
· 每一個 TCP 聯機都必須由一端(通常為 client )發起請求這個 port 通常是隨機選擇大於 1024 以上的 port 號來進行!其 TCP 封包會將(且只將) SYN 旗標設定起來!這是整個聯機的第一個封包;
· 如果另一端(通常為 Server ) 接受這個請求的話(當然啰,特殊的服務需要以特殊的 port 來進行,例如 FTP 的 port 21 ),則會向請求端送回整個聯機的第二個封包!其上除了 SYN 旗標之外同時還將 ACK 旗標也設定起來,並同時時在本機端建立資源以待聯機之需;
· 然後,請求端獲得服務端第一個響應封包之後,必須再響應對方一個確認封包,此時封包只帶 ACK 旗標(事實上,後繼聯機中的所有封包都必須帶有 ACK 旗標);
· 只有當服務端收到請求端的確認( ACK )封包(也就是整個聯機的第三個封包)之後,兩端的聯機才能正式建立。這就是所謂的 TCP 聯機的'三段式交握( Three-Way Handshake )'的原理。
經過三向交握之後,呵呵!你的 client 端的 port 通常是高於 1024 的隨機取得的 port 至於主機端則視當時的服務是開啟哪一個 port 而定,例如 WWW 選擇 80 而 FTP 則以 21 為正常的聯機信道!
總而言之,我們這里所說的埠,不是計算機硬體的I/O埠,而是軟體形式上的概念.工具提供服務類型的不同,埠分為兩種,一種是TCP埠,一種是UDP埠。計算機之間相互通信的時候,分為兩種方式:一種是發送信息以後,可以確認信息是否到達,也就是有應答的方式,這種方式大多採用TCP協議;一種是發送以後就不管了,不去確認信息是否到達,這種方式大多採用UDP協議。對應這兩種協議的服務提供的埠,也就分為TCP埠和UDP埠。
那麼,如果攻擊者使用軟體掃描目標計算機,得到目標計算機打開的埠,也就了解了目標計算機提供了那些服務。我們都知道,提供服務就一定有服務軟體的漏洞,根據這些,攻擊者可以達到對目標計算機的初步了解。如果計算機的埠打開太多,而管理者不知道,那麼,有兩種情況:一種是提供了服務而管理者沒有注意,比如安裝IIS的時候,軟體就會自動增加很多服務,而管理員可能沒有注意到;一種是伺服器被攻擊者安裝木馬,通過特殊的埠進行通信。這兩種情況都是很危險的,說到底,就是管理員不了解伺服器提供的服務,減小了系統安全系數。
//////////////////////////////////////////////////////////////////////////////////
什麼是「埠」?
在網路技術中,埠(Port)有好幾種意思。集線器、交換機、路由 器的埠指的是連接其他網路設備的介面,如RJ-45埠、Serial埠等。我們 這里所指的埠不是指物理意義上的埠,而是特指TCP/IP協議中的埠,是邏 輯意義上的埠。
那麼TCP/IP協議中的埠指的是什麼呢?如果把IP地址比作一間房子 ,埠就是出入這間房子的門。真正的房子只有幾個門,但是一個IP地址的埠 可以有65536個之多!埠是通過埠號來標記的,埠號只有整數,范圍是從0 到65535。
埠有什麼用呢?我們知道,一台擁有IP地址的主機可以提供許多服 務,比如Web服務、FTP服務、SMTP服務等,這些服務完全可以通過1個IP地址來 實現。那麼,主機是怎樣區分不同的網路服務呢?顯然不能只靠IP地址,因為IP 地址與網路服務的關系是一對多的關系。實際上是通過「IP地址+埠號」來區 分不同的服務的。
需要注意的是,埠並不是一一對應的。比如你的電腦作為客戶機訪 問一台WWW伺服器時,WWW伺服器使用「80」埠與你的電腦通信,但你的電腦則 可能使用「3457」這樣的埠,如圖1所示。
按對應的協議類型,埠有兩種:TCP埠和UDP埠。由於TCP和UDP 兩個協議是獨立的,因此各自的埠號也相互獨立,比如TCP有235埠,UDP也 可以有235埠,兩者並不沖突。
1.周知埠(Well Known Ports)
周知埠是眾所周知的埠號,范圍從0到1023,其中80埠分配給W WW服務,21埠分配給FTP服務等。我們在IE的地址欄里輸入一個網址的時候( 比如www.cce.com.cn)是不必指定埠號的,因為在默認情況下WWW服務的埠 號是「80」。
網路服務是可以使用其他埠號的,如果不是默認的埠號則應該在 地址欄上指定埠號,方法是在地址後面加上冒號「:」(半形),再加上埠 號。比如使用「8080」作為WWW服務的埠,則需要在地址欄里輸入「www.cce.com.cn:8080」。
但是有些系統協議使用固定的埠號,它是不能被改變的,比如139 埠專門用於NetBIOS與TCP/IP之間的通信,不能手動改變。
2.動態埠(Dynamic Ports)
動態埠的范圍是從1024到65535。之所以稱為動態埠,是因為它 一般不固定分配某種服務,而是動態分配。動態分配是指當一個系統進程或應用 程序進程需要網路通信時,它向主機申請一個埠,主機從可用的埠號中分配 一個供它使用。當這個進程關閉時,同時也就釋放了所佔用的埠號。
怎樣查看埠
一台伺服器有大量的埠在使用,怎麼來查看埠呢?有兩種方式: 一種是利用系統內置的命令,一種是利用第三方埠掃描軟體。
1.用「netstat -an」查看埠狀態
在Windows 2000/XP中,可以在命令提示符下使用「netstat -an」查 看系統埠狀態,可以列出系統正在開放的埠號及其狀態.
2.用第三方埠掃描軟體
第三方埠掃描軟體有許多,界面雖然千差萬別,但是功能卻是類似 的。這里以「Fport」 (可到http://www.ccert.e.cn/tools/index.php?type_t=7或http://www.ccidnet.com/soft/cce下載)為例講解。「Fport」在命令提示符下使用,運行結果 與「netstat -an」相似,但是它不僅能夠列出正在使用的埠號及類型,還可 以列出埠被哪個應用程序使用.
參考資料:http://bk..com/view/1075.htm
8. 怎麼編程
學編程,決不可心浮氣燥。任何實踐都是……
我認為有些人的觀點錯了。錯得一塌糊塗。
對於這個問題,我的基本觀點是:任何實踐都是理論的載體或表現形式。而理論也是由實踐上升而來
的。兩者是辨證的。今天,我們只關注它的前一部分:任何實踐都是理論的載體和表現形式。
我不是想故弄玄虛,但真理的外表看上去往往就是這么奇形怪狀、難以理解。讓我來給你解釋一下
吧。
比如:戰爭是軍事理論的實踐,也是它的表現形式。戰爭的勝負取決於指揮者軍事理論的掌握程度(別
給我舉趙括這類「紙上談兵」的反例,他們根本算不上掌握了軍事理論,充其量只算是「背」下了軍事
理論。「掌握」和「倒背如流」這是兩個概念。)
1、VC、VB、Delphi …… ,你該學哪個?
具體到編程而言,我要告訴你:任何一種計算機語言,都是計算機科學理論的載體或表現形式。C++很
神嗎?Java很酷嗎?它們差距很遠嗎?是的。但從理論的層面上講,它們沒有區別,都是「面向對象」
理論的一個具體形式而已。
現在的程序員們被發行編譯軟體(通常我們將其稱為「系統軟體」)的商家不斷推出的產品搞得眼花繚
亂,頭痛欲裂。不斷地跟在新語言後面跑,這條路還沒跑到頭,那邊的「新路」又鳴鑼開張了,於是再
跟著跑……漸漸地有些人開始感嘆:學海無涯、學無止境,或什麼「程序員是青春飯,過了三十別想
干」……
在此我不得不嘆息:中國的教育真是一種「形而上學」的教育。早在高中時代我們就學過「辨證唯物主
義」的基本理論:做事情要抓主要矛盾。這一條恐怕誰都知道,卻鮮見誰能在實踐中把這一理論運用得
「爐火純青」的。把這一理論運用到編程上來講就是:
理論是主要矛盾,語言是次要矛盾,學會了理論,再具體到學一種語言時,你只不過是在進行某種消遣
而已。
現在學VC的普遍看不起學VB的或學Delphi的。但如果一個用Delphi的人,在需要寫web程序時,用
TCP/IP做了一個構架,嵌入到應用程序中;而另一個用VC的人卻只會把一個又一個的組件拖來拉去的做
些個「例子程序」的翻版。你說他們兩個誰歷害?Delphi和VC誰歷害?
真應了這樣一段話,問:紐約好還是上海好?答:有錢哪兒都好,沒錢哪兒都不好。上海的富人並不比
紐約的富人少多少的優越感,而紐約的乞丐也不比上海的乞丐多多少幸福感。
現在你還會說學VC的人就一定比學Delphi的人水平高、「錢景」好嗎?
2、「淺薄」絕不該是中國程序員的性格特徵!!!
想問一句:中國程序員這么多,你們真地把基礎理論學好了嗎?別用你現有的編程經歷告訴我:編程不
需要數學,不需要數據結構,不需要編譯原理…… ……說話得負責任,您知道嗎?我之所以發表這篇
文章,就是因為再也看不下去這種在中國編程界漫延的歪理邪說了!邪教害死的是人的個體,你們害死
的是中國軟體業的未來!如果再讓這種理論繼續毒害編程新手的思想,中國將在計算機領域失去民族的
尊嚴!!!
請問,操作系統、編譯軟體、資料庫系統…… 這些被稱為「系統軟體」的東東,中國有幾樣拿得出手
的產品?也許是我孤陋寡聞,據我所知:我們國家一件像樣的也沒有。
不錯,我們是有一些網站的股票在西方上市了,我們是有一些人被國外公司請去做高級職員了,我們也
有一些人把西方的官方網站給黑了……但是,我們用的編譯工具是誰的產品?我們微機里裝得是誰做出
的操作系統?我們的程序跑在誰的晶元上?
愛之深,恨之切。我愛的是中國,但我痛恨不是中國,而是在中國編程界普遍流行的「淺薄」和「自以
為是」,這是我們民族軟體業的一顆毒瘤!
是的,現在編程方面快速入門的書滿天飛,讓程序員的門檻越來越低。我這個外行就得益於這個「低門
檻」,跑了進來。但進來後,我們就不能再這樣淺薄下去了——我的兄弟們!
用他國提供的工具做幾個網站,寫幾個應用程序,弄出幾個病毒…… 是振興不了民族軟體業的。順便
說一句:我尊敬求伯君,但我不認為金山公司和其系列產品配得上被稱為「民族軟體業」的大旗,相對
這個稱號,它差得太遠了。
…… ……
寫flash軟體的人會認為用flash做動畫的人比他歷害嗎?Adobe公司真的認為考取Adobe證書的人是「人
才」嗎?MSCE、MSCD…… 通過這類考試得到微軟徽章的人,在微軟眼裡是「人才」還是「義務推銷
員」?持這類證書以及其他一些大軟體公司認證的人,你們還在以為自己是「中國軟體業的精英」而感
嘆「懷才不遇」、工資太少嗎?
醒醒吧,朋友。別再用編程不需要理論的話來自欺欺人了,別再用自己的淺薄來教導別人像自己一樣淺
薄了。我想問問那些稱數學、數據結構等基礎課程對編程沒用的人:
請你們搞清一個概念:是這些理論「沒用」,還是你們「沒用到」;是你們「沒用到」,還是你們的水
平根本「用不到」;是你們「不需要用」,還是你們根本「不會用」?
舉個例子,操作系統中的工作調度,若工作優先權相同,用什麼方法進行調度?當然是「先到先做」—
—這就是數據結構中「隊列」的應用。你們說「用不到」,只怕是因為到目前為止還沒機會接觸這類
「高端編程」的挑戰吧?這樣的話,那就算了,掙你的錢去,但別再來這里誤人子弟,吹噓什麼優秀的
程序員不需要理論。
是誰說系統軟體發展的黃金時代已經過去了?Linux不就是在MS操作系統雄霸多年的情況下一舉成名的
嗎?中國難道就找不到這樣一個機會? 不,如果我們的程序員克服了現在的浮燥與急功近利,我們一
樣可以在「系統軟體」這一軟體業的「高端」樹立自己的品牌!所以請看下面——
3、年輕人應該有宏偉的志向。
用別人的產品做自己的東西,你永遠只是個「高級客戶」,成不了真正的開發者。不管你用他國的系統
軟體開發出多少好的產品,掙了多少錢,只要人家一升級、或一推出新產品,你口袋裡的銀子連同最後
一條小褲叉也會被剝奪得一干二凈。你,只不過是一個高級打工仔。
我希望打算進入編程界的朋友們,特別是現在還很年輕的朋友,能有一個比較高的志向。更希望已經進
到這行的朋友們能有以「振興民族軟體業」為己任,力爭成為中國軟體業的「旗手」。
我不贊同方東興把微軟罵得一無是處。更不贊同年輕人學他那樣,一賭氣而拒絕用微軟的產品,拒絕
Windows、拒絕VC 、拒絕IE ……
我認為方東興只是個狹隘的民族主義者。他看到了中國軟體業民族的一面,卻不願承認我們落後的一
面。毫無根據的「自尊」等於自取滅亡。清朝末年,我們的科技並不落後於西方多少,但我們過分「自
尊」的「大國思想」卻使我們失去了向其他國家學習的機會。當我們嘲笑西方人的藍眼睛、大鼻子的時
候,他們的堅船利炮,卻把我們「央央大國」的皇帝、太後打得滿世界逃難。慈禧太後被打得滿地找牙
的時候,不得不說出「量中華之物力,博與國之歡欣」的齷齪話,此時,她「大國皇太後」的自尊何在
呢?前面自尊過了頭,事後必遭報應。這報應一持續,就是幾百年,直到現在。難道我們還要繼續閉門
造車,再走老路嗎?
我們現在承認微軟比我們強,向微軟學習,並不等於我們永遠要跟在他後面跑!在我們低下頭的時候,
我們就應該想到,何時能再抬起這顆高貴的頭顱!!!而且是「一定」!!!!!自尊不是錯,錯是錯
在「太盲目」——妄自尊大,你就要和慈禧一樣被打得滿地找牙。做為一個大國,一個明智的民族,我
們不能諱疾忌醫。
年輕人,志當存高遠。相信我,當你以民族振興為己任的時候,封王稱帝、富貴榮華,都只不過是千秋
偉業的一個副產品。在這個尊重知識、崇尚科學的年代,志向高遠的人,永遠不必擔心自己的「錢
途」。
不必諱言,我承認我當初進入編程領域不完全出於興趣,也有「錢途」方面的考慮。但就好像當年參加
八路的戰士當中,有些只是報著能吃上軍糧或打鬼子報家仇的思想入伍的,但後來卻學習了馬列,提高
了覺悟,轉為以興國救民為目標一樣,當我一步步深入到這行以後,當我決定考研並慢慢提高了認識以
後,我的目的變了。我覺得應該有個更高的人生目標,更高志向和追求來支持我的行動。這個目標就
是:為民族軟體業盡一把自己的力。
真心希望你與我同行。
4、幾點建議:
建議大家耐下心來先學好理論,然後再選擇具體的工具或語言。不過,在所有這一切開始以前,先打好
C語言和匯編基礎。
能不能得道,就看你在見到別人做出一些花里胡哨的東西時,是不是能堅定信心、耐住寂寞、抵禦誘惑
了。
一個和我一起學習C語言的人,學完就直接開始玩VC,而我則潛下心來學了些C++和理論方面的東西。早
早地,他就能仿照書上用VC做些界面似的東西在我面前炫耀,可後來,當我基礎理論的學習告一段落,
做個圖書管理程序賣了800大洋時,他還只是停留在做「例子程序」的水平上。現在我們談論起編程,
深度早已不可同日而語了。他起跑領先,卻落在了後面。
我不敢自以為是,只是想用這個親身經歷告訴大家:學編程,決不可心浮氣燥。
5、結束語
我的話觸到許多人的痛處,而且由於寫時心中氣憤難平,有些出言不遜,可能要遭人罵了。不過,既然
寫了,就不怕罵。因為:以上所言全是忠告,識不識貨,就看您的眼光了
9. 什麼是埠
計算機「埠」是英文port的義譯,可以認為是計算機與外界通訊交流的出口。其中硬體領域的埠又稱介面,如:USB埠、串列埠等。軟體領域的埠一般指網路中面向連接服務和無連接服務的通信協議埠,是一種抽象的軟體結構,包括一些數據結構和I/O(基本輸入輸出)緩沖區。
按埠號可分為3大類:
(1)公認埠(Well Known Ports):從0到1023,它們緊密綁定(binding)於一些服務。通常這些埠的通訊明確表明了某種服務的協議。例如:80埠實際上總是HTTP通訊。
(2)注冊埠(Registered Ports):從1024到49151。它們鬆散地綁定於一些服務。也就是說有許多服務綁定於這些埠,這些埠同樣用於許多其它目的。例如:許多系統處理動態埠從1024左右開始。
(3)動態和/或私有埠(Dynamic and/or Private Ports):從49152到65535。理論上,不應為服務分配這些埠。實際上,機器通常從1024起分配動態埠。但也有例外:SUN的RPC埠從32768開始。
一些埠常常會被黑客利用,還會被一些木馬病毒利用,對計算機系統進行攻擊,以下是計算機埠的介紹以及防止被黑客攻擊的簡要辦法。
8080埠
埠說明:8080埠同80埠,是被用於WWW代理服務的,可以實現網頁瀏覽,經常在訪問某個網站或使用代理伺服器的時候,會加上「:8080」埠號,比如http://www.cce.com.cn:8080。
埠漏洞:8080埠可以被各種病毒程序所利用,比如Brown Orifice(BrO)特洛伊木馬病毒可以利用8080埠完全遙控被感染的計算機。另外,RemoConChubo,RingZero木馬也可以利用該埠進行攻擊。
操作建議:一般我們是使用80埠進行網頁瀏覽的,為了避免病毒的攻擊,我們可以關閉該埠。
埠:21
服務:FTP
說明:FTP伺服器所開放的埠,用於上傳、下載。最常見的攻擊者用於尋找打開anonymous的FTP伺服器的方法。這些伺服器帶有可讀寫的目錄。木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的埠。
埠:22
服務:Ssh
說明:PcAnywhere建立的TCP和這一埠的連接可能是為了尋找ssh。這一服務有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞存在。
埠:23
服務:Telnet
說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務。大多數情況下掃描這一埠是為了找到機器運行的操作系統。還有使用其他技術,入侵者也會找到密碼。木馬Tiny Telnet Server就開放這個埠。
埠:25
服務:SMTP
說明:SMTP伺服器所開放的埠,用於發送郵件。入侵者尋找SMTP伺服器是為了傳遞他們的SPAM。入侵者的帳戶被關閉,他們需要連接到高帶寬的E-MAIL伺服器上,將簡單的信息傳遞到不同的地址。木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個埠。
埠:80
服務:HTTP
說明:用於網頁瀏覽。木馬Executor開放此埠。
埠:102
服務:Message transfer agent(MTA)-X.400 over TCP/IP
說明:消息傳輸代理。
埠:109
服務:Post Office Protocol -Version3
說明:POP3伺服器開放此埠,用於接收郵件,客戶端訪問伺服器端的郵件服務。POP3服務有許多公認的弱點。關於用戶名和密碼交 換緩沖區溢出的弱點至少有20個,這意味著入侵者可以在真正登陸前進入系統。成功登陸後還有其他緩沖區溢出錯誤。
埠:110
服務:SUN公司的RPC服務所有埠
說明:常見RPC服務有rpc.mountd、NFS、rpc.statd、rpc.csmd、rpc.ttybd、amd等
埠:119
服務:Network News Transfer Protocol
說明:NEWS新聞組傳輸協議,承載USENET通信。這個埠的連接通常是人們在尋找USENET伺服器。多數ISP限制,只有他們的客戶才能訪問他們的新聞組伺服器。打開新聞組伺服器將允許發/讀任何人的帖子,訪問被限制的新聞組伺服器,匿名發帖或發送SPAM。
埠:135
服務:Location Service
說明:Microsoft在這個埠運行DCE RPC end-point mapper為它的DCOM服務。這與UNIX 111埠的功能很相似。使用DCOM和RPC的服務利用計算機上的end-point mapper注冊它們的位置。遠端客戶連接到計算機時,它們查找end-point mapper找到服務的位置。HACKER掃描計算機的這個埠是為了找到這個計算機上運行Exchange Server嗎?什麼版本?還有些DOS攻擊直接針對這個埠。
埠:137、138、139
服務:NETBIOS Name Service
說明:其中137、138是UDP埠,當通過網上鄰居傳輸文件時用這個埠。而139埠:通過這個埠進入的連接試圖獲得NetBIOS/SMB服務。這個協議被用於windows文件和列印機共享和SAMBA。還有WINS Regisrtation也用它。
埠:161
服務:SNMP
說明:SNMP允許遠程管理設備。所有配置和運行信息的儲存在資料庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統。他們可能會試驗所有可能的組合。SNMP包可能會被錯誤的指向用戶的網路
什麼是埠?
在開始講什麼是埠之前,我們先來聊一聊什麼是 port 呢?常常在網路上聽說『我的主機開了多少的 port ,會不會被入侵呀!?』或者是說『開那個 port 會比較安全?又,我的服務應該對應什麼 port 呀!?』呵呵!很神奇吧!怎麼一部主機上面有這么多的奇怪的 port 呢?這個 port 有什麼作用呢?!
由於每種網路的服務功能都不相同,因此有必要將不同的封包送給不同的服務來處理,所以啰,當你的主機同時開啟了 FTP 與 WWW 服務的時候,那麼別人送來的資料封包,就會依照 TCP 上面的 port 號碼來給 FTP 這個服務或者是 WWW 這個服務來處理,當然就不會搞亂啰!(註:嘿嘿!有些很少接觸到網路的朋友,常常會問說:『咦!為什麼你的計算機同時有 FTP、WWW、E-Mail 這么多服務,但是人家傳資料過來,你的計算機怎麼知道如何判斷?計算機真的都不會誤判嗎?!』現在知道為什麼了嗎?!對啦!就是因為 port 不同嘛!你可以這樣想啦,有一天,你要去銀行存錢,那個銀行就可以想成是『主機』,然後,銀行當然不可能只有一種業務,里頭就有相當多的窗口,那麼你一進大門的時候,在門口的服務人員就會問你說:『嗨!你好呀!你要做些什麼事?』你跟他說:『我要存錢呀!』,服務員接著就會告訴你:『喝!那麼請前往三號窗口!那邊的人員會幫您服務!』這個時候你總該不會往其它的窗口跑吧?! ""這些窗口就可以想成是『 port 』啰!所以啦!每一種服務都有特定的 port 在監聽!您無須擔心計算機會誤判的問題呦!)
· 每一個 TCP 聯機都必須由一端(通常為 client )發起請求這個 port 通常是隨機選擇大於 1024 以上的 port 號來進行!其 TCP 封包會將(且只將) SYN 旗標設定起來!這是整個聯機的第一個封包;
· 如果另一端(通常為 Server ) 接受這個請求的話(當然啰,特殊的服務需要以特殊的 port 來進行,例如 FTP 的 port 21 ),則會向請求端送回整個聯機的第二個封包!其上除了 SYN 旗標之外同時還將 ACK 旗標也設定起來,並同時時在本機端建立資源以待聯機之需;
· 然後,請求端獲得服務端第一個響應封包之後,必須再響應對方一個確認封包,此時封包只帶 ACK 旗標(事實上,後繼聯機中的所有封包都必須帶有 ACK 旗標);
· 只有當服務端收到請求端的確認( ACK )封包(也就是整個聯機的第三個封包)之後,兩端的聯機才能正式建立。這就是所謂的 TCP 聯機的'三段式交握( Three-Way Handshake )'的原理。
經過三向交握之後,呵呵!你的 client 端的 port 通常是高於 1024 的隨機取得的 port 至於主機端則視當時的服務是開啟哪一個 port 而定,例如 WWW 選擇 80 而 FTP 則以 21 為正常的聯機信道!
總而言之,我們這里所說的埠,不是計算機硬體的I/O埠,而是軟體形式上的概念.工具提供服務類型的不同,埠分為兩種,一種是TCP埠,一種是UDP埠。計算機之間相互通信的時候,分為兩種方式:一種是發送信息以後,可以確認信息是否到達,也就是有應答的方式,這種方式大多採用TCP協議;一種是發送以後就不管了,不去確認信息是否到達,這種方式大多採用UDP協議。對應這兩種協議的服務提供的埠,也就分為TCP埠和UDP埠。
那麼,如果攻擊者使用軟體掃描目標計算機,得到目標計算機打開的埠,也就了解了目標計算機提供了那些服務。我們都知道,提供服務就一定有服務軟體的漏洞,根據這些,攻擊者可以達到對目標計算機的初步了解。如果計算機的埠打開太多,而管理者不知道,那麼,有兩種情況:一種是提供了服務而管理者沒有注意,比如安裝IIS的時候,軟體就會自動增加很多服務,而管理員可能沒有注意到;一種是伺服器被攻擊者安裝木馬,通過特殊的埠進行通信。這兩種情況都是很危險的,說到底,就是管理員不了解伺服器提供的服務,減小了系統安全系數。
//////////////////////////////////////////////////////////////////////////////////
什麼是「埠」?
在網路技術中,埠(Port)有好幾種意思。集線器、交換機、路由 器的埠指的是連接其他網路設備的介面,如RJ-45埠、Serial埠等。我們 這里所指的埠不是指物理意義上的埠,而是特指TCP/IP協議中的埠,是邏 輯意義上的埠。
那麼TCP/IP協議中的埠指的是什麼呢?如果把IP地址比作一間房子 ,埠就是出入這間房子的門。真正的房子只有幾個門,但是一個IP地址的埠 可以有65536個之多!埠是通過埠號來標記的,埠號只有整數,范圍是從0 到65535。
埠有什麼用呢?我們知道,一台擁有IP地址的主機可以提供許多服 務,比如Web服務、FTP服務、SMTP服務等,這些服務完全可以通過1個IP地址來 實現。那麼,主機是怎樣區分不同的網路服務呢?顯然不能只靠IP地址,因為IP 地址與網路服務的關系是一對多的關系。實際上是通過「IP地址+埠號」來區 分不同的服務的。
需要注意的是,埠並不是一一對應的。比如你的電腦作為客戶機訪 問一台WWW伺服器時,WWW伺服器使用「80」埠與你的電腦通信,但你的電腦則 可能使用「3457」這樣的埠,如圖1所示。
按對應的協議類型,埠有兩種:TCP埠和UDP埠。由於TCP和UDP 兩個協議是獨立的,因此各自的埠號也相互獨立,比如TCP有235埠,UDP也 可以有235埠,兩者並不沖突。
1.周知埠(Well Known Ports)
周知埠是眾所周知的埠號,范圍從0到1023,其中80埠分配給W WW服務,21埠分配給FTP服務等。我們在IE的地址欄里輸入一個網址的時候( 比如www.cce.com.cn)是不必指定埠號的,因為在默認情況下WWW服務的埠 號是「80」。
網路服務是可以使用其他埠號的,如果不是默認的埠號則應該在 地址欄上指定埠號,方法是在地址後面加上冒號「:」(半形),再加上埠 號。比如使用「8080」作為WWW服務的埠,則需要在地址欄里輸入「www.cce.com.cn:8080」。
但是有些系統協議使用固定的埠號,它是不能被改變的,比如139 埠專門用於NetBIOS與TCP/IP之間的通信,不能手動改變。
2.動態埠(Dynamic Ports)
動態埠的范圍是從1024到65535。之所以稱為動態埠,是因為它 一般不固定分配某種服務,而是動態分配。動態分配是指當一個系統進程或應用 程序進程需要網路通信時,它向主機申請一個埠,主機從可用的埠號中分配 一個供它使用。當這個進程關閉時,同時也就釋放了所佔用的埠號。
怎樣查看埠
一台伺服器有大量的埠在使用,怎麼來查看埠呢?有兩種方式: 一種是利用系統內置的命令,一種是利用第三方埠掃描軟體。
1.用「netstat -an」查看埠狀態
在Windows 2000/XP中,可以在命令提示符下使用「netstat -an」查 看系統埠狀態,可以列出系統正在開放的埠號及其狀態.
2.用第三方埠掃描軟體
第三方埠掃描軟體有許多,界面雖然千差萬別,但是功能卻是類似 的。這里以「Fport」 (可到http://www.ccert.e.cn/tools/index.php?type_t=7或http://www.ccidnet.com/soft/cce下載)為例講解。「Fport」在命令提示符下使用,運行結果 與「netstat -an」相似,但是它不僅能夠列出正在使用的埠號及類型,還可 以列出埠被哪個應用程序使用.