• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >编程技巧 > UUencode 编码,UU编码介绍、UUencode编码转换原理与算法

UUencode 编码,UU编码介绍、UUencode编码转换原理与算法

作者:mdxy-dxy 字体:[增加 减小] 来源:互联网 时间:2017-05-12

mdxy-dxy 通过本文主要向大家介绍了UUencode 编码,UU编码介绍、UUencode编码转换原理与算法等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

UUencode编码起先用在unix网络中,先是Unix系统下将二进制的资料借由uucp邮件系统传输的一个编码程式,也是一种二进制到文字的编码。不属于MIME编码中一员。它也是定义了用可打印字符表示二进制文字一种方法,并不是一种新的编码集合。主要解决,二进制字符在传输、存储中问题。它早期在电子邮件中使用较多,最近这些年来基本上被MIME 中Base64所取代了。E-mail中一般采用UU、MIME、BINHEX三种编码标准! 我想,了解下这种编码将二进制字符转换为可打印字符实现思路!对我们以后做类似处理工作,应该会有很多的启示。

UUencode编码过程

Uuencode将输入资料以每三个字节为单位进行编码,如此重复进行。如果最后剩下的资料少于三个字节,不够的部份用零补齐。这三个字节共有24个Bit,以6-bit为单位分为4个群组,每个群组以十进制来表示所出现的数值只会落在0到63之间。将每个数加上32,所产生的结果刚好落在ASCII字符集中可打印字符(32-空白…95-底线)的范围之中。每60个编码输出(相当于45个输入字节)将输出为独立的一行,每行的开头会加上长度字符,除了最后一行之外,长度字符都应该是'M'这个ASCII字符(77=32+45),最后一行的长度字符为32+剩下的字节数目这个ASCII字符。如果是一个 0字节那它应该被转换为0×60而不是0×20,因为(前引用'`')优于 0×20(空格' ‘)。

特点一:看到特点了吧,也是64字符,也是一组6位。怎么,怎么,跟我们的base64这么相似呢?是的,从这个定义中,我们确实发现它跟base64比起来很相似了。

特点二:它定义64字符,不用写映射表,是通过加32转换到可打印字符范围中。比起base64,更为简单!

思考问题:它的字符范围都是可打印字符,我们会发现64字符集合中,有很多是特殊字符:”!”#¥%&‘()*+='” 等等。这些字符在不同应用中,可能都有些特殊用途。因此,在使用该编码时候,或许会出现一些问题。我想这也许是UUencode编码方法,逐渐被Base64所取代的原因吧。

UUencode 64字符集

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • UUencode 编码,UU编码介绍、UUencode编码转换原理与算法

相关文章

  • 2017-05-12动态语言、动态类型语言、静态类型语言、强类型语言、弱类型语言介绍
  • 2017-05-12设计高可用和高负载的网站系统的几个注意事项
  • 2017-05-12Get方法和Post方法的区别深入理解
  • 2017-05-12Geohash的原理、算法和具体应用探究
  • 2017-05-12php asp.net 比较 [推荐]
  • 2017-05-12JavaScript/VBScript脚本程序调试(Wscript篇)
  • 2017-05-12十分钟内学会 避免用户刷新导致重复POST提交
  • 2017-05-12textarea 在IE和FF下换行无法正常显示的解决方法
  • 2017-05-12三招两式 解决图片盗链无法查看问题
  • 2017-05-12Web 开发中遇到的UTF-8编码的问题总结第1/2页

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 动态语言、动态类型语言、静态类型语言、强类型语言、弱类型语言介绍
    • 网站性能提高实战经验点滴记录
    • 算法系列15天速成 第十四天 图【上】
    • 使用百度云加速后网站打开速度慢、广告不显示的解决方法
    • 关于图片存储格式的整理(JPEG格式介绍)
    • JavaScript/VBScript脚本程序调试(Wscript篇)
    • 程序员编程从初级到中级的10个秘诀
    • 到初创公司工作的五个理由
    • 关于base64编码的原理及实现方法分享
    • 一张图告诉你计算机编程语言的发展历史

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有

可打印字符 十进制ASCII值 uuencode
二进制表示
uuencode
十进制表示
可打印字符 十进制ASCII值 uuencode
二进制表示
uuencode
十进制表示
(space) 32 000 000 0 @ 64 100 000 32
! 33 000 001 1 A 65 100 001 33
" 34 000 010 2 B 66 100 010 34
# 35 000 011 3 C 67 100 011 35
$ 36 000 100 4 D 68 100 100 36
% 37 000 101 5 E 69 100 101 37
& 38 000 110 6 F 70 100 110 38
' 39 000 111 7 G 71 100 111 39
( 40 001 000 8 H 72 101 000 40
) 41 001 001 9 I 73 101 001 41
* 42 001 010 10 J 74 101 010 42
+ 43 001 011 11 K 75 101 011 43
, 44 001 100 12 L 76 101 100 44
- 45 001 101 13 M 77 101 101 45
. 46 001 110 14 N 78 101 110 46
/ 47 001 111 15 O 79 101 111 47
0 48 010 000 16 P 80 110 000 48
1 49 010 001 17 Q 81 110 001 49
2 50 010 010 18 R 82 110 010 50
3 51 010 011 19 S 83 110 011 51
4 52 010 100 20 T 84 110 100 52
5 53 010 101 21 U 85 110 101 53
6 54 010 110 22 V 86 110 110 54
7 55 010 111 23 W 87 110 111 55
8 56 011 000 24 X 88 111 000 56
9 57 011 001 25 Y 89 111 001 57
: 58 011 010 26 Z 90 111 010 58
; 59 011 011 27 [ 91 111 011 59
< 60 011 100 28 \ 92 111 100 60
= 61 011 101 29