美文网首页
反向比特串编码

反向比特串编码

作者: emiya_d8a0 | 来源:发表于2019-11-24 10:09 被阅读0次

在学习Programming Language Foundations in Agda第一章Naturals时, 最后有个比特串的反向编码, 觉得也挺有意思的.

data Bin : Set where
  nil : Bin
  x0_ : Bin → Bin
  x1_ : Bin → Bin
编码方式, nil是高位方向
1011   => x1 x1 x0 x1 nil
001011 => x1 x1 x0 x1 x0 x0 nil

这种编码方式用来实现inc(加1)比较简单:

inc : Bin → Bin
inc nil = x1 nil
inc (x0 m) = x1 m
inc (x1 m) = x0 (inc m)

思路很简单, 开始遇到的1都变成0, 最后一个0变为1(在这里面就是第一个0).

相关文章

  • 反向比特串编码

    在学习Programming Language Foundations in Agda第一章Naturals时, ...

  • CRC编码及C++实现

    CRC的基本原理 CRC编码也称为多项式编码,因为该编码能够将要发送的比特串看做系数是0和1一个多项式,对比特串的...

  • 比特币有什么价值,我为什么投资比特币?

    ​一串代码有什么价值?没有。比特币也是一串代码,一串二进制世界里的Base58编码,但是比特币是有价值的,为什么,...

  • 为什么劝你配置些比特币?比特币的价值在哪里?

    一串代码有什么价值?没有。比特币也是一串代码,一串二进制世界里的Base58编码,但是比特币是有价值的,为什么,让...

  • 2019-06-26 反编译经纬度

    //反向地理编码 CLGeocoder *clGeoCoder = [[CLGeocoder alloc] in...

  • 哈夫曼编码 C语言实现

    C语言实现哈夫曼编码 程序功能:提供一段字符串,输出哈夫曼编码压缩后的总比特数(仅计算小写字母和空格) ```c ...

  • 一张漫画带你秒懂比特币

    首先比特币是怎么产生的? 比特币本身是一串代码 瞅一眼人名币上的编号你就懂了 这个编码是怎么生成的呢?说个故事: ...

  • python 字符 编码 简述

    字符编码问题很简单,当你可以区分以下几种概念之后: 字节编码与字符编码 字节串与字符串 文件编码、IDE编码、其他...

  • 笔记-encode与decode

    字节串-->decode('原来的字符编码')-->Unicode字符串-->encode('新的字符编码')--...

  • 流NSStream

    流 在通信路径中串行传输的连续的比特位序列(二进制数据串)。即,二进制数据串在端与端之间的传输。从编码的角度来看,...

网友评论

      本文标题:反向比特串编码

      本文链接:https://www.haomeiwen.com/subject/eeflwctx.html