要求:(有具体的通讯规约)
用VB编写一个终端仿真程序模拟终端与主站建立通讯的过程:
终端与主站采用TCP连接终端为客户端,主站为服务器端,
主站默认IP为本地地址,默认端口号为:2000
仿真程序完成一下几个功能:
1、 建立TCP连接
2、 登陆主站(发送登陆报文)
3、 接受到主站正确的登陆响应后,定时发送心跳报文
4、 注销登录
5、 关闭TCP连接没看懂,有没有人可以给我解释一下,我需要查找那些方面的资料。

解决方案 »

  1.   

    我考虑了一下,解释如下,不知道对不对终端与主站采用TCP连接终端为客户端,主站为服务器端,
    主站默认IP为本地地址,默认端口号为:2000
    -------------------------------------------------------
    也就是分别做客户端和服务器端两个程序,他们用winsock进行通讯,这个我以前做过局域网的winsock通讯,互联网上的应该是一样的但是端口号是做什么的?1、 建立TCP连接
    -----------------------------------------------------
    就是用winsock建立连接。2、 登陆主站(发送登陆报文)
    --------------------------------------------------
    什么叫登陆报文?3、 接受到主站正确的登陆响应后,定时发送心跳报文
    ----------------------------------------------------
    什么叫心跳报文?4、 注销登录
    ------------------------------------------
    如何注销?5、 关闭TCP连接
      

  2.   

    就这些资料么??
    不是很难啊,局域网和广域网的做法完全一样的.
    广域网也有一个IP给你连接的, 
    楼主不知道端口号么??那你以前作局域网怎么作的呢??用TCP连接需要端口号啊.
    下面说的什么心跳报文应该有专门的说明吧,给你的资料上没有说么?
      

  3.   

    其它的按字面的意思也就可以知道个大概,"心跳报文"这个词可能令你感到比较迷惑,我简单解释一下:所谓"心跳报文"就是周期性定时广播的一段比较小的报文,来告诉别人自己的状态(呵呵,还有心跳)。如果该计算机发生故障时,他的心跳报文中会包含这一错误信息,或者根本就无法发出报文了(死了,心跳没有了)至于具体的,用google搜之
      

  4.   

    1 建立tcp连接
    2 发送用户登陆信息给服务器
    3 服务器方验证信息,通过就执行4,不通过返回提示
    4 服务器发送数据给用户(包括任何文件形式)
    5 用户发送注销信息给服务器,服务器判断是否终止发送文件,如果发送完成,执行6,非,执行4
    6 服务器发送特定数据,允许客户断开连接,客户,服务器断开此连接
      

  5.   

    应该就用winsock和聊天程序道理一样的
      

  6.   

    数据格式是BCD码,是不是就是4位的8421的那种?
    采用Bin编码是什么意思啊?
      

  7.   

    行政区化码 320100 南京市,怎么表示为BCD码啊?
      

  8.   

    ASCII 和BCD 码 
    编码
    一、BCD码(二--十进制编码),所谓二--十进制编码(BCD码)就是指将十进制的每一位用4位二进制来表示,其最常用是8421 BCD码。 二、ASCII码,主要对数字、字母、通用符号、控制符号等字符的编码。ASCII码是用七位表示一个字符,可以表示128种不同的字符,共有三类:(1)数字0~9;(2)26个大写英文字母和26个小写英文字母;(3)各种运算符号、标点符号和控制符号等。 
    BCD编码  在数字系统中,各种数据要转换为二进制代码才能进行处理,而人们习惯于使用十进制数,所以在数字系统的输入输出中仍采用十进制数,这样就产生了用四位二进制数表示一位十进制数的方法,这种用于表示十进制数的二进制代码称为二-十进制代码(Binary Coded Decimal),简称为BCD码。它具有二进制数的形式以满足数字系统的要求,又具有十进制的特点(只有十种有效状态)。在某些情况下,计算机也可以对这种形式的数直接进行运算。常见的BCD码表示有以下几种。8421BCD编码  这是一种使用最广的BCD码,是一种有权码,其各位的权分别是(从最有效高位开始到最低有效位)8,4,2,1。
      例 写出十进数563.97D对应的8421BCD码。
        563.97D=0101 0110 0011 . 1001 01118421BCD
      例 写出8421BCD码1101001.010118421BCD对应的十进制数。
        1101001.010118421BCD=0110 1001 . 0101 10008421BCD=69.58D
      在使用8421BCD码时一定要注意其有效的编码仅十个,即:0000~1001。四位二进制数的其余六个编码1010,1011,1100,1101,1110,1111不是有效编码。2421BCD编码  2421BCD码也是一种有权码,其从高位到低位的权分别为2,4,2,1,其也可以用四位二进制数来表示一位十进制数。其编码规则如下表。余3码  余3码也是一种BCD码,但它是无权码,但由于每一个码对应的8421BCD码之间相差3,故称为余3码,其一般使用较少,故正须作一般性了解,具体的编码如下表。常见BCD编码表十进制数 8421BCD码 2421BCD码 余3码 
    0        0000      0000      0011 
    1        0001      0001      0100 
    2        0010      0010      0101 
    3        0011      0011      0110 
    4        0100      0100      0111 
    5        0101      1011      1000 
    6        0110      1100      1001 
    7        0111      1101      1010 
    8        1000      1110      1011 
    9        1001      1111      1100 
    10     0001,0000 0001,0000 0100,0011 
     
      

  9.   

    我知道8421BCD码,320100可以表示为0011 0010 0000 0001 0000 0000 ,可是然后我该怎么转为2个字节的BCD码呢?
      

  10.   

    原来用过压缩BCD码,就是一个字节表示2个十进制数,就是十进制的 13,相对应十六进制的 13