建议:
我们建议每一个普通消息的前8位保留,用来表示消息的类型。这个协定的采用并不是表示同意实际类型的使用。它只是建议一个约定,使每一个正常消息的前8位对于用户数据来说不能使用。
讨论:
SocketPort
____________
VV/
V/
=/==
-------(+)->Y--><
===
PROCESS
=/==
-------(-)->X<--<
===
/
____________/
及早建立有关消息内容的约定是非常重要的,这样才不至于网络上运行的每两个程序之间都会有一种信息的约定。
随着网络的发展,指定消息语法语义的语言网络语言获得发展。然而,即使在这些约定之前,已经存在了一种使用消息类型描述消息的简单方式,发送方和接收方都能够解释它们。
重要的是,目前运行的程序仍然需要使用这种约定继续运行。然而我们建议两端的系统程序能够重写,程序开始先检查消息类型并删去消息类型。我们把这两个程序称为X和Y。一般来说,X和Y会进行数据的转换,例如转换字母集和数字格式。随着网络的增长,X和Y可能变成表格驱动的,表格由用户指定。
标准类型和本地类型:
我们建议把标准和本地这两种类型区分开来。
我们无法期望这两个转换程序能够每一种可能的数据表示之间和它们的数据表示形式之间进行转换,而且,数据形式的改变不应该涉及到程序X和Y,因此我们建议在整个网络中只有固定的消息类型有意义。它们就是标准类型。
共有两种本地类型:MYLOCAL和YOURLOCAL。一个MYLOCALn的消息表示:这是发送主机类型集中的类型n。一个YOURLOCALn表示:这是接收主机类型集中的类型n。
约定:
便准类型和本地类型的一种可能方案就是把标准类型0定义为YOURLOCAL,把标准类型1定义为MYLOCAL。这样,第二个字节表示本地类型号。
本地类型0表示用户指定,也就是说,信息内容没有改变也没有检查。安装会定义自己的本地类型号,它们可以从网络信息中心获得。
因而,最初所有发送到目前程序的消息都应该是类型0或者n,所有从现在程序中接收到的消息都应该是类型1或者n,n是本地安装的字母集类型号。
可能的标准类型举例:
0.YOURLOCAL
1.MYLOCAL
2.U.S.Ascii
3.EBCDIC
4.Mod33TTYAscii
5.假如将来程序X和Y转换是表格驱动的,载入表格驱动转换器的表#n,这就指定了表格。表格号n存储在消息的第二个字节。
6.使用表格驱动转换器表格n
7.网络标准图形消息
本地类型举例:
1:本地字母集,例如:Lincolnwriter,DECAscii等等
2:本地图形消息,例如:Tx-2定点显示执行调用,GSAM
Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...
07-05
Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...
07-05
KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...
07-05
Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...
07-05