??xml version="1.0" encoding="utf-8" standalone="yes"?>
装左一日ubuntu
删除 grub
dos?nbsp; fdisk /mbr
linux 分区的大?/p>
swap 1024 mb
/
/home 1024 mb ext3
/boot 300 mb
如果计算器程序是一个命令行E序Q那么完全可以要求用户先输入W一个操作楼Q后输入一个运符Q在输入W二个操作数Q随后程序就可以l出l果了?
然而对于一个Windows应用E序Q用h一个键一个键地输入数据,E序在接C个键输入以后Q根据这个键是什么来军_自己的下一动作。这PE序的行为就可以用一?#8220;状态机”来表达?
状态机是计机中常用到的分析工P它可以表达成一个程序在q行Ӟ如何Ҏ输入来在不同的状态之间{换?nbsp;
状态{?
操作C初始?,如果开始输入的W一个操作数的第一个键是操作符,之后׃接受W二个操作数?
接受W一个操作数子状?
接受W二个操作数子状?
在程序实CQ用一个boolean变量 bNumBegins来判断是否处在接受第一个数字的状态?
If(bNumBegins)
{
iCurrent = I;
bNumBegins = false;
}
Else
{
//要求查运溢出的情况
Checkd{
iCurrent = (iCurrent * 10 ) +I;
}
}
而判断在接受W一个还是第二个操作数状态的ҎQ则是看前一个运符 -----如果前一个运符?= Q则现在接受的是W一个操作数Q否则是W二个操作数?
计算的方法:
Switch(jOperator)
{
Case ‘+’ :
Checked{ iResult = iNum1 + iCurrent;}
Break;
Case ‘-’ :
Checked{ iResult = iNum1 - iCurrent;}
Break;
Case ‘*’ :
Checked{ iResult = iNum1 * iCurrent;}
Break;
Case ‘/’ :
Checked{ iResult = iNum1 / iCurrent;}
Break;
Default: // ‘=’
iResult = iCurrent;
break;
}
/////////////////////////////////////////////////////////////////////////
以上是见到本子个C的一些看书的W记Q程序是一些片断但显了整个设计?br /> 以下则是自己想的Q自己想出的E序和h家的q是有一D距R?/p>
1. 先判断是数字q是操作W,再判断所处状态,再跟据不同的状态有不同的操?
Int Num1 = 0;
Int Num2 = 0;
Int ResultNum = 0;
Int CurrentNum = 0;
Boolean IsNum1 = true;
Boolean NumBegin = true;
Switch (key) //输入字符
{
Case 数字:
If(IsNum1)
{
If(NumBegin)
{
Num1 = key;
CurrentNum = Num;
NumBegin = false;
Println(CurrentNum); //打印
}
Else
{
Num1 = Num1+10 + key;
CurrentNum = Num1;
Println(CurrentNum); //打印
}
}
Else
{
If(NumBegin)
{
Num2 = key;
CurrentNum = Num;
NumBegin = false;
Println(CurrentNum); //打印
}
Else
{
Num2 = Num1+10 + key;
CurrentNum = Num2;
Println(CurrentNum); //打印
}
}
Case (q算W?
+:
If(IsNum1)
{
IsNum1 = false; //变状?br />
Println(CurrentNum); //打印
}
Else
{
ResultNum = Num1 + Num 2;
CurrentNum = ResultNum;
IsNum1 = false; //变状?br />
Println(CurrentNum); //打印
}
- , * , / , ……
= “
If(IsNum1)
{
IsNum1 = false; //变状?br />
Println(CurrentNum); //打印
//q里不太清楚具体要怎么Pp己定q样
}
Else
{
ResultNum = Num1 + Num 2;
CurrentNum = ResultNum;
IsNum1 = false; //变状?br />
Println(CurrentNum); //打印
}
}
2. 先判断状态,再判断输入是数字q是操作W?br /> 代码应该同上面差不多;
3. 讑֮具体状态的|之后在一个方法中跟据不同的参数值做不同的事
如:接受W一操作数__接受W一个数?nbsp; = 1
接受W一操作数__接受其余的数?nbsp; = 2
接受W二操作数__接受W一个数?nbsp; = 3
接受W二操作数__接受W二个数?nbsp; = 4
本文来自CSDN博客Q{载请标明出处Qhttp://blog.csdn.net/ap0406708/archive/2009/03/19/4004322.aspx
在Unix操作pȝ中,几乎M东西(盘Q用L端,|络q接)都可以用一个文件描q符来表C,q种l一性得UnixE序员可以写备无关的应用E序?/p>
Socket也是一个文件描q符Q只不过q个文g描述W表C的是网l,应用E序对于q个描述W的d是对网l数据的d?/p>
在徏立一个Socket的时候,可以把它l定C个网l地址上的一个端口,一旦绑定成功,应用E序可以用q个Socket来传送和接收数据了?/p>
应用E序可以选择用TCPq是UDPq接QTCP可靠建立q接QUDP不可靠不接?/p>
2.1 面向q接的套接字的系l调用时序图
2.2 无连接协议的套接字调用时序图
2.3 面向q接的应用程序流E图
//囄来自:http://www.vckbase.com/document/viewdoc/?id=484
2008.02.13
1.子网掩码
子网掩码的作用是定目的地址L是否与当前主机处于同一|络Q即这目的L是本地的q是q程的?br />
P77 讲道Q?#8220;CIDR不是子|掩码分?位组Q而将其按照位数分?2个部分。这样可以更好规划网l的规模Q减IP地址的浪费,惛_一个Bcȝl中?000C机,ҎBcȝl的特点q将费6万个IP地址?#8221;
问题Q点解话费Q?br />
2046 = 2?2ơ方Q只?2位主机IDQ其余网lID
CIDR不用8,8分,固然可以?2位主机IDQ而要8,8分就要用?6位主机テQ,固然费6万个QP
?,8分也可以引入子网QDQ就8位子|テQ,Q主机テQ,用8时个子网?br />
我都唔知点讲好,太多概念了吧。实践下好Q不q网l的野点E个环境呢~~~
2.可以使用Q台服务器充当Y件\由器Q要讄允许QP转发Q但肯定无专业的g路由器性能比~~~
3.QP协议知道如何扑ֈ两个本地子网
4.|络通信分单播,q播Q组?br />
l播涉及QGQPQ组理协议Q?br />
P88 写道Q?#8220;QGQPL成员查询报文的生存期?,以确保该信息不会转发臛_他网l?#8221;
问题Q每到\由器Q生存期减Q,Q了׃弃?br />
唔明距所谓的其出|络点定义,本地Q如一个网l下有4个子|,子网Q与子网2唔本圎ͼ
子网间的q接是交换机Q\由器有什么区别?
p88q写刎ͼ“l播可能要经q不同的|关”
问题Q网关不是一个\由器地址吗?生存期到0时\由器怎么q会转发Q?br />
5.QP协议==>定|络
QRQ协?=>定物理地址Q网l中拉置
QRQ协议 q播 ?#8220;who has"
有就回应 “QP is MAC”
6.默认|关
在\p中找不到发l它
路由表中0.0.0.0 的项q默认|关
如果无,在\p中找不到׃丢弃
7.q输层以下的internet层是不可靠的
所以要有措施去保证
如TCP 有序列号Q确定号Q窗口(控Q?br />
8.tcp
1.建立q接
三次握手
1.SYN报文D?br />
2.SYNACK报文D?br />
3.SYN = 0
2.传送数?br />
传输控制协议
内容有序列号Q窗口之c?br />
9.Q?Q 无故ARP 代理ARP 反向ARP
RPCq程q程调用
多\复用Q分?br />
唔清楚的概念q不?br />
10.NAT U有地址 转 公有地址
从而可以连接外|(Internet)
q对外隐藏了U有|络
11.讑֤ 初理?br />
集线?nbsp; =====一条ȝ
|桥 把两个或多个|段qv?br />
交换?q接pȝQ全双工
路由?可连接两个LQN|络环境
12. ipconfig /release
ipconfig /renew
重新获到配置
13. |段vs子网 IP转发