简述web服务在互联网上的应用

JavaScript038

简述web服务在互联网上的应用,第1张

随着互连网络的广泛应用和发展,特别是.NET技术的升温和市场的日渐成熟,越来越多软件开发商在为到底是选择微软公司的.NET还是SUN公司的J2EE作为自己开发平台和工具而感到左右为难。一般说来,绝大多数公司根据市场情况,客户需求,开发成本,升级成本,培训成本,产品价格,兼容性,可靠性、安全性等选择了其中之一。也有少数有实力的公司准备开发两套独立的产品,以满足不同的客户需求。更多的公司希望自己开发的产品能相互移植,特别是从微软公司的.NET移植到SUN公司的J2EE。既能利用微软的产品相对便宜,开发成本低,开发效率高,又可拥有J2EE所具有的开放性、跨平台性、安全性,扩大自己的客户群。

美国Stryon公司即将推出iNET产品将有能力让软件开发商用微软公司的.NET开发的应用利用J2EE技术无缝地移植到非Windows平台上。iNET相当于.NET的JAVA实现。它由一个IL2JAVA工具,用JAVA实现的.NET框架类库等组成。能集成Tomcat,Sun One,WebLogic,Oracle9i,iPlanet等多种用以实现ASP.NET和Web服务的Web服务器。

是的,这就是Web服务。一切都是因为Web服务的出现,使得.NET和J2EE争夺的焦点已不完全是对象模型之间的战争或者编程语言选美竞赛了。Web服务使用基于 XML 的消息处理作为基本的数据通讯方式,消除使用不同组件模型、操作系统和编程语言的系统之间存在的差异,使异类系统能够作为单个计算网络协同运行。开发人员可以用像过去在创建分布式应用程序时使用组件一样的方式创建将来自各种源的Web服务组合在一起的应用程序。

Web 服务所实现的最基本的方案是向它的客户端提供某个基本功能以供其使用。也可以以复合方式使用Web服务来集成一组似乎完全不同的现有应用程序。还能创建构成端对端工作流解决方案的应用程序(如企业到企业交易中的解决方案)。

Web服务是建立在一些通用协议的基础上,如HTTP,SOAP,XML,WSDL,UDDI等。这些协议在涉及到操作系统、对象模型和编程语言的选择时,没有任何倾向,因此将会有很强的生命力。但具体到Web服务编程时,.NET和J2EE有一些区别。.NET Web服务可用C#,VB,JScript等语言编写,还能利用一些Windows资源;而J2EE Web服务一般使用JAVA语言及J2EE资源,像Bean,EJB,CORBA等。它们在编程环境,语法结构,管理配置等方面也各有自己的特色。iNET Web服务用JAVA语言实现了.NET 类库中提供的Web服务APIs。它能把用户用.NET开发的Web服务移植到与平台无关的JAVA。因是JAVA,故也可利用JAVA的资源。

进行Web服务调用时发生的过程与进行常规方法调用时发生的过程类似。主要的差别在于,不是调用位于客户端应用程序中的方法,而是根据指定的传输(如 HTTP)生成请求消息。由于Web 服务方法可能位于另一台计算机上,因此Web 服务处理请求所需的信息必须通过网络传递给承载Web 服务的服务器。Web 服务处理此信息并通过网络将结果发送回客户端应用程序。这就是可编程的 Internet.

可以预见,作为 Internet下的一个革命性进步,Web服务必将开创一个分布式应用程序开发的新时代。

这是我自己编过项目中的多字节运算子程序

有加法,除法,减乘更为简单类推一下吧

注释写得很详细了,出口入口地址也有标记

n个数据相加子程序

11,13,15为进位。12,14,16为相加结果,分别为低8位、中、高8位

vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

ADDP: MOV 11H,#00H

MOV 12H,#00H

MOV R0,#20H <---"20"起始位置

MOV 12H,@R0

LOOP1: MOV A,R0

ADD A,#03H

MOV R1,A

MOV A,12H

ADD A,@R1

JNB PSW.7,SI1

INC 11H

SI1: MOV 12H,A

MOV A,R1

MOV R0,A

CJNE R0,#4DH,LOOP1 <---"4D"终止变量,YANG YF DESIGN

MOV A,#00H

MOV 13H,#00H

MOV 14H,#00H

MOV R0,#21H <---"21"起始位置

MOV 14H,@R0

MOV A,14H

ADD A,11H

MOV 14H,A

LOOP2: MOV A,R0

ADD A,#03H

MOV R1,A

MOV A,14H

ADD A,@R1

JNB PSW.7,SI2

INC 13H

SI2: MOV 14H,A

MOV A,R1

MOV R0,A

CJNE R0,#4EH,LOOP2 <---"4E"终止变量

MOV A,#00H

MOV 15H,#00H

MOV 16H,#00H

MOV R0,#22H <---"22"起始位置

MOV 15H,@R0

MOV A,16H

ADD A,13H

MOV 16H,A

LOOP3: MOV A,R0

ADD A,#03H

MOV R1,A

MOV A,16H

ADD A,@R1

JNB PSW.7,SI3

INC 15H

SI3: MOV 16H,A

MOV A,R1

MOV R0,A

CJNE R0,#4FH,LOOP3 <---"4F"终止自定义位置变量 ,

MOV A,#00H

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

除法运算子程序

支持被除数32位、除数24位,任意位长除法

被除数需根据计时和累加组数****预先置入,****调试准确度调整亦调节此值!!!!!!!!

17H、18H、19H为除数输入口,32H、33H、34H、35H为运算结果

vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

SETDIV: MOV P1,#0FFH

JNB P1.1,MEAS_F 当P1.1置1(高)为测速,置0(低)为测频

MEAS_V: MOV R2,#11111111B ***测速****

MOV R3,#11101000B 被除数R2-R5,转移至22H-25H进行变位处理

MOV R4,#00100101B **被除数为定值,前端0的个数已知

MOV R5,#00001011B 设被除数前端0的个数已知为y,除数前端0的个数计数为x(R0),后部循环次数为(32-y)-(24-x)=(8-y)+x

JMP STARDIV

MEAS_F: MOV R2,#00111010B ***测频**** YANG YF DESIGN

MOV R3,#01100110B 被除数R2-R5,转移至22H-25H进行变位处理

MOV R4,#00111110B **被除数为定值,前端0的个数已知

MOV R5,#10000111B 设被除数前端0的个数已知为y,除数前端0的个数计数为x(R0),后部循环次数为(32-y)-(24-x)=(8-y)+x

JMP STARDIV

STARDIV:MOV 22H,R2

MOV 23H,R3

MOV 24H,R4

MOV 25H,R5

MOV 17H,16H 除数17H-19H,载入累加后12H、14H、16H结果

MOV 18H,14H

MOV 19H,12H

MOV 32H,#00H结果输出位32H-35H初置0 YANG YF DESIGN

MOV 33H,#00H

MOV 34H,#00H

MOV 35H,#00H

MOV R0,#00H

MOV R1,#00H

MOV 10H,#00H

CHECKFRONT: CLR C

MOV A,17H检查除数高位是否有空位0

RLC A

JNC MOVFRONT

JMP LOOPCOUNT

MOVFRONT: INC R0

CLR C 除数高位空位为0时前移

MOV A,19H 1)

RLC A

MOV 19H,A

MOV A,18H 2)

RLC A

MOV 18H,A

MOV A,17H 3)

RLC A

MOV 17H,A

JMP CHECKFRONT

LOOPCOUNT: MOV A,#09H

ADD A,R0

MOV 10H,A 后部循环次数R0

JUDGSUB:MOV PSW,#00H

MOV A,R1

CJNE A,10H,JMP0

JMP RESULTDIV

JMP0: MOV A,22H

MOV C,ACC.7 ******!!!!

MOV F0,C

CLR C ******!!!!

SUBB A,17H

JC CANOTSUB 溢位

JNZ JMP1WHEN ACC!=#00H THEN JUMP

MOV A,23H

CLR C

SUBB A,18H

JC CANOTSUB

JMP1: JNZ JMP2WHEN ACC!=#00H THEN JUMP

MOV A,24H

CLR C

SUBB A,19H

JC CANOTSUB

JMP2: JMP SUBBPART

CANOTSUB: JNB F0,TURN1

JB F0,MOVDR

JMP SUBBPART

SUBBPART: CLR C

MOV A,25H

JNB PSW.1,JMPSP1

JB ACC.7,JMPSP1

SETB ACC.7

MOV A,19H

INC A

MOV 19H,A

JMPSP1: MOV A,24H

SUBB A,19H

MOV 24H,A

MOV A,23H

SUBB A,18H

MOV 23H,A

MOV A,22H

SUBB A,17H

MOV 22H,A

ACALL SETCY_1

JB B.0,MOVDL 除数因条件右移后左移恢复

LJMP JUDGSUB

MOVDR: SETB B.0

CLR C 除数右移一位

MOV A,17H 1)

RRC A

MOV 17H,A

MOV A,18H 2)

RRC A

MOV 18H,A

MOV A,19H 3)

RRC A

MOV 19H,A

MOV PSW.1,C 除数末尾移出暂存至F1

ACALL SETCY_0

JMP SUBBPART

MOVDL: MOV C,PSW.1

MOV A,19H 1)

RLC A

MOV 19H,A

MOV A,18H 2)

RLC A

MOV 18H,A

MOV A,17H 3)

RLC A

MOV 17H,A

CLR B.0

SETB B.1

JMP JUDGSUB

TURN1: CLR C

MOV A,25H 1)

RLC A

MOV 25H,A

MOV A,24H 2)

RLC A

MOV 24H,A

MOV A,23H 3)

RLC A

MOV 23H,A

MOV A,22H 4)

RLC A

MOV 22H,A

JB B.1,JMPCALLSC0

ACALL SETCY_0

JMPCALLSC0: CLR B.1

JMP JUDGSUB

SETCY_0:JB B.2,JMPSE1 B.2判断是否置1后第一次置0,是则忽略一次

INC R1 已计算次数计数

CLR C移入一位0

MOV A,35H

RLC A

MOV 35H,A 输出地址32H-35H

MOV A,34H

RLC A

MOV 34H,A

MOV A,33H

RLC A

MOV 33H,A

MOV A,32H

RLC A

MOV 32H,A

CLR C

JMPSE1: CLR B.2

RET

SETCY_1:INC R1 已计算次数计数 YANG YF DESIGN

SETB C 移入一位1

MOV A,35H

RLC A

MOV 35H,A 输出地址32H-35H

MOV A,34H

RLC A

MOV 34H,A

MOV A,33H

RLC A

MOV 33H,A

MOV A,32H

RLC A

MOV 32H,A

CLR C

SETB B.2

RET

RESULTDIV: 不可删 YANG YF DESIGN

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^