Julia - 整数型
所有的基础数据类型通过灵活用户可扩展的类型提升系统 ,不需显式类型转换,就可以互相运算
整数的默认类型,取决于系统是 32 位还是 64 位
julia> typeof(1) # 32 位系统
Int32 julia> typeof(1) # 64 位系统
Int64
Julia 内部变量 WORD_SIZE 查看系统是 32 位还是 64 位
julia> WORD_SIZE # 32 位系统
32 julia> WORD_SIZE # 64 位系统
64
Julia 定义了 Int 和 UInt 类型,分别是系统原生的有符号和无符号整数类型的别名
julia> Int # 有符号整数类型
Int64 julia> UInt # 无符号整数类型
UInt64
对于不能用 32 位而只能用 64 位来表示的大整数文本,不管系统类型是什么,始终被认为是 64 位整数
julia> typeof(3000000000) # 不管是 32 位还是 64 位
Int64
数值类型的最小值和最大值,可以通过 typemin 和 typemax 函数来查询
julia> typemin(Int64)
-9223372036854775808 julia> typemax(Int64)
9223372036854775807 julia> typemin(Int32)
-2147483648 julia> typemax(Int32)
2147483647
typemin 和 typemax 的返回值,与所给的参数类型是同一类的
二进制
二进制使用 0b 前缀
julia> 0b10010
0x12 julia> typeof(ans)
UInt8
二进制被转换为 0x 开头的十六进制
八进制
八进制使用 0o 前缀
julia> 0o567
0x0177 julia> typeof(ans)
UInt16
八进制被转换为 0o 开头的十六进制
十六进制
无符号整数十六进制使用 0x 前缀
无符号数的位数大小,由十六进制数的位数决定
julia> 0x1
0x01 julia> typeof(ans)
Uint8 julia> 0x123
0x0123 julia> typeof(ans)
Uint16 julia> 0x1234567
0x01234567 julia> typeof(ans)
Uint32 julia> 0x123456789abcdef
0x0123456789abcdef julia> typeof(ans)
Uint64
溢出
如果计算结果超出数据类型的最大值,就会发生溢出
julia> x = typemax(Int64)
9223372036854775807 julia> x + 1
-9223372036854775808 julia> x + 1 == typemin(Int64)
true
为了减小溢出所带来的影响,整数加减法、乘法、指数运算都会把原先范围较小的整数类型提升到 Int 或 UInt 类型,除法、求余、位运算则不提升类型
Julia - 整数型的更多相关文章
- 数量经济学推荐的Julia教程
http://quant-econ.net/jl/learning_julia.html Julia最为号称和c媲美的运行速度,想python一下简单的语法,虽然发展还不完善,但任然值得去关注. Ju ...
- julia的优化?
julia> function fib1(n) if n==1 return n else return n+fib1(n-1) end end fib1 (generic function w ...
- [问题解决]《GPU高性能编程CUDA实战》中第4章Julia实例“显示器驱动已停止响应,并且已恢复”问题的解决方法
以下问题的出现及解决都基于"WIN7+CUDA7.5". 问题描述:当我编译运行<GPU高性能编程CUDA实战>中第4章所给Julia实例代码时,出现了显示器闪动的现象 ...
- windows 版的julia repl 启动时间已经大大优化!
julia 是一门语法类似python 偏向主要用于科学计算的语言,julia吸收了很多其它语言的优点,内置了大量函数,使用起来很方便. 之前windows下的 julia repl(交互解释器)启动 ...
- Mandelbrot和Julia
概述 mandelbrot julia Mandelbrot 对全体复数z,满足xn+1 = xn2 + z从x0 = 0起,|x|随n值增加不趋于无穷大,则z属于Mandelbrot集 代码 #i ...
- CPU和GPU实现julia
CPU和GPU实现julia 主要目的是通过对比,学习研究如何编写CUDA程序.julia的算法还是有一定难度的,但不是重点.由于GPU实现了也是做图像识别程序,所以缺省的就是和O ...
- julia下载QQ.jl
julia下载QQ.jl #=""" julia下载QQ.jl 从http://im.qq.com/pcqq/页面中提取出QQ的下载地址,并下载. 2016年4月1日 1 ...
- julia解无忧公主的数学时间097.jl
julia解无忧公主的数学时间097.jl #=""" julia解无忧公主的数学时间097.jl http://mp.weixin.qq.com/s?__biz=MzI ...
- julia文件合并排序.jl
julia文件合并排序.jl """ julia文件合并排序.jl http://bbs.bathome.net/thread-39841-1-1.html 2016年3 ...
随机推荐
- ng开启缓存 造成的问题:
开启缓存 造成的问题:
- go语言学习 strings常用函数
strings包中的函数用法 参考链接http://studygolang.com/articles/88 1.strings.replace() 函数原型 func Replace(str1, ol ...
- swift 函数参数——实参与形参
实参 在传入函数之前已有明确定义. 具体定义为 func funcName( actualParameter: Type ) {} 形参 参数只在此函数内有效并可使用,函数外不需要有明确定义. 具体定 ...
- Sprint Boot 学习Q&A
[ERROR] Failed to execute goal pl.project13.maven:git-commit-id-plugin:2.1.11:revision (default) on ...
- HDU - 4336:Card Collector(min-max容斥求期望)
In your childhood, do you crazy for collecting the beautiful cards in the snacks? They said that, fo ...
- 如何将常规的web 应用程序转化为云上多租户 SaaS 解决方案
如何将web 应用程序转化为多租户 SaaS 解决方案 https://www.ibm.com/developerworks/cn/cloud/library/cl-multitenantsaas/i ...
- iOS应用截屏
iPhone自从推出后就自带了截屏功能,简单而易用,所以应用就没什么截屏的需求了,不过有些时候我们还是会遇到这个需求.比如,我们开发了一个播放器,用openGL进行video render,此时直接截 ...
- Windows10安装MySQL8.0
1.到MySQL官网下载安装包:https://dev.mysql.com/downloads/mysql/:选择8.0版本: 2.将下载好的安装包(mysql-8.0.12-winx64 .zip) ...
- asp.net如何判断服务器上的目录或文件是否存在
asp.net判断服务器上的目录或文件是否存在!(实例) // ======================================================= [判断文件是否存在] u ...
- IO流-文件夹的拷贝
文件夹的拷贝操作 要求: 完成文件夹的拷贝,包括子目录的拷贝和所有文件的拷贝 分析: 首先,得在目标目录下创建一个与源文件夹名称相同的文件夹 遍历源文件夹中的所有文件对象,判断子文件是目录还是文件 如 ...