美文网首页
小知识点总结

小知识点总结

作者: aksskas | 来源:发表于2017-11-05 16:47 被阅读0次

最近看的东西比较杂,简要的对不太熟悉的东西做个记录,也对计算机基础知识做点回顾。

运算符

  • 1.&*, &+, &-
&+(_:_:)
Returns the sum of the two given values, discarding any overflow.
// 在不出现溢出的情况下,与普通的+运算符无差别,溢出时,不会报错,而是直接转成相应的溢出值

// 例子
let x: Int8 = 10 &+ 21  // x == 31 (未溢出)
/*
 0000 1010   // 10的补码
 0001 0101   // 21的补码
 ---------------
 0001 1111   // 补码
 0001 1111   // 原码(31)
 */

let y: Int8 = 100 &+ 121 // y == -35 (溢出)
/*
 0110 0100   // 100的补码
 0111 1001   // 121的补码
 ---------------
 1101 1101   // 补码
 1101 1100   // 反码
 1010 0011   // 原码(-35)
 */

&*,&-与上述意思相同

  • 2.~=
~=(_:_:)
Returns a Boolean value indicating whether a value is included in a range.
// 判断值是否在指定区间内,返回Bool值
let chosenNumber = 3
if 0..<10 ~= chosenNumber {
    print("\(chosenNumber) 在 [0,10)的区间内")
}
// 也可以配合Switch使用
switch chosenNumber {
case 0..<10:
    print("\(chosenNumber) 在 [0,10)的区间内")
default:
    print("\(chosenNumber) 不在 [0,10)的区间内")
}

基础知识回顾

  • 1.原码,反码,补码
总结起来有以下四点
1. 正数的原码,补码,反码都相同
2. 负数的反码是对原码除符号位外均取反
3. 负数的补码是在反码的基础上+1
4. 计算机都是以补码形式进行运算的
  • 2.位运算符
& 按位与   
1&1==1,1&0==0, 0&0==0

| 按位或                 
1|0==1, 1|1==1, 0|0==0

^ 按位异或
0^0==0, 1^1==0, 1^0==1

~ 取反
~0==1, ~1==0

<< 左移
 a<<4,左移4位,高位丢弃,低位补0

>> 右移(a>>4,右移4位)
例如 a = 15, a>>2
0000 1111  -> 0000 0011
// 正数高位补0,低位丢弃
// 负数高位补0/1由编译系统决定(很多系统规定补1),低位丢弃
  • 3.大小端模式
    大端小端模式是数据在内存中存储的两种方式
以0x1234为例
大端模式(Big-Endian):数据的低位存储在高内存地址中
----------------
高地址    低地址
----------------
0x34      0x12    
----------------
小端模式(Little-Endian):数据的低位存储在低内存地址中
----------------
高地址    低地址
----------------
0x12      0x34   
----------------

相关文章

  • 无标题文章

    综和复习本月知识点总结: 一:微信小程序 二:vue复习 三:js复习 四:新知识点 一:微信小程序知识点总结 开...

  • 2019-12-05 Login Button and Reco

    Salesforce小知识点总结:Enable the 'Administrators Can Login as ...

  • webApI

    总结 :小知识点 其实我看懂了下面的英文:

  • 小知识点总结

    1. Xcode 修改模板:在此路径中修改相应的模板 2. [!] Failed to connect to G...

  • 知识点小总结

    HTML部分 浏览器显示形式区分块级元素行内元素 元素特点区分替换元素非替换元素 H5新特性语义化元素 artic...

  • 小知识点总结

    最近看的东西比较杂,简要的对不太熟悉的东西做个记录,也对计算机基础知识做点回顾。 运算符 1.&*, &+, &-...

  • 小知识点总结

    小知识点总结 标签(空格分隔): 随笔 1.H5&C3新知识点 H5新标签 H5中新增了很多具有“语义化”的新标签...

  • 小知识点总结

    占坑

  • MySQL 小知识点总结

    title: MySQL 小知识点总结date: 2016-01-09update time: 2016-05-1...

  • 22年护考备考资料

    护考历年常考知识点总结 护考历年常考知识点总结

网友评论

      本文标题:小知识点总结

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