手机短信以70个字符计费,为何?

greatflystone 2017-12-19 928

2017-12-05 琛哥 对此有了详细的解释
[p=null, 2, left] [/p][p=null, 2, left]在智能手机未面世之前,很多人除了打电话之外,通过手机端最多的就是短信交流。记得那时候,大家最关心的是包月多少条免费短信,而不是现在包月多少流量。[/p]
[p=null, 2, left]然而,对于一条手机短信,一般限定为70个中文字符,多出的内容将会被拆开分成一条条70个中文字符以内的短信发送出去,然而短信费用,依然是按一条70个中文字符进行计算,一条长短信,系统拆成几条,就收几条短信的费用,这是为什么呢?[/p]
[p=null, 2, left]这个问题需要追溯到20世纪80年代,短信功能在20世纪末在发展到了一个非常成熟的阶段,而创建SMS(short message service)功能的是一个名叫Friedhelm Hillebrand的德国人。[/p]
[p=null, 2, left]Friedhelm Hillebrand作为手机短信技术的主要发明人,他当时使用一台打字机随意打出一些由字母组成的信息,令人奇怪的是,这些信息每一条都是只有一两行,而且总字数也不会超过160个,160便成为他感觉颇具神奇的数字。[/p]
[p=null, 2, left]在GSM环境下,Hillebrand提出了通过现有电话网络发送128字节信息文本的概念。这条文本信息的缺点是拥有长度限制,到后来SMS功能的160个字符限制这个古怪的限制也是Hillebrand提出的。不过在这项计划开始实施的初期,Hillebrand的团队发现这条信道只能容纳最多128个字符的短信,这显然不够用。不过,在削减了短信字符集之后,他们最终把信道的容量又提升了32个字符,达到160个。[/p]
[p=null, 2, left]他最终觉得的160个字符的限制绝对够用,而且当时明信片和电报传输也通常少于150个字符。当时的通信技术研究者们也正在准备给手机的文字短信订立标准。由于当时的技术条件所限,无线传输的带宽并不高,这就要求手机短信要言简意赅。根据Hillebrand确定的这个数字规定了手机短信的字符数限制数。而Hillebrand当时已经在全球GSM协会下属的非语音服务委员会(nonvoice services committee)中担任主席,于是GSM协会于1986年通过而且建立了这条规则,该协会要求所有的手机生产商必须在手机中加入短信功能。在这之后,所有的移动电话运营商和手机都被责令予以支持。[/p]
[p=null, 2, left]学过编程的童鞋应该都比较明白,由于字符自身使用编码方式的不同,最终将导致字符个数的不同。对于英文字母而言,一般采用7位ASCII编码,中文则为8位UCS-2编码,需要占用2个字节。[/p]
[p=null, 2, left]也就是说,160个英文字符要用7位ASCII编码来进行表示,需要7×160位。然而换成8位UCS-2编码表示,则需要7×160÷8位。同时,由于中文汉字需要占用2个字符,这样中文字符总数就是7×160÷8÷2,刚好等于70。[/p]
[p=null, 2, left]这也就是手机短信为什么只有70个中文字符的由来了。[/p]
[p=null, 2, left]原信息产业部于2001年发布的《9001800MHz TDMA数字蜂窝移动通信网扩展短消息实体到短消息中心接口协议规范》里也规定了一条中文短信的长度为70个字符。[/p]
[indent][backcolor=rgb(255,218,169)][backcolor=palegreen]short_message_text:[/backcolor][/backcolor]
[backcolor=rgb(255,218,169)][backcolor=palegreen]短消息数据内容,当编码类型为7位码,类型为C_String,最大长度为160个字符。8位码时,类型为C_String,最大长度为140个字节。当为Unicode时,类型为C_UnicodeString,最大长度为70个字符。[/backcolor][/backcolor]
[/indent]
最新回复 (0)
返回
发新帖