首页 > 其他分享 >[20230823]dc命令简单学习.txt

[20230823]dc命令简单学习.txt

时间:2023-08-23 22:14:42浏览次数:33  
标签:10 进制 16 -- 20230823 dc txt

[20230823]dc命令简单学习.txt

--//dc 作为命令行计算器自己很少使用,找机会学习一下.
--//dc 对比 bc 作为计算器最大的不同的地方是采用Reverse Polish Notation (RPN).又叫逆波兰表示法,简单一点就是运算符号在最后
--//,取消了复杂的括号等优先级问题.简化复杂运算.

$ dc --help
Usage: D:\tools\linux\usr\local\wbin\dc.exe [OPTION] [file ...]
  -e, --expression=EXPR    evaluate expression
  -f, --file=FILE          evaluate contents of file
  -h, --help               display this help and exit
  -V, --version            output version information and exit

Report bugs to [email protected]
Be sure to include the word ``dc'' somewhere in the ``Subject:'' field.

D:\>dc
 1 3 + pq
4

--//先输入操作的数值,然后输入操作的运算符号,p显示结果.
--//注意一个细节,负数因为要规避减号(-),使用下划线(_)代替.例子:

D:\>dc -e "1 -3 - p"
dc: stack empty
-2

$ dc -e "1 _3 - p"
4

--//k表示精度.例子:
$ dc -e "10 k 1 3 /  p"
.3333333333

--//v表示平方根,例子:
D:\>dc -e "4 k 4 vp 4.4 vp "
2.0000
2.0976

--//10进制转16进制
$ dc -e "10 i 16 o 123 pq"
7B

--//16进制转10进制,16进制要输入大写,因为前面已经输入16 i ,这样A表示10进制的10.
$ dc -e "16 i A o 7B pq"
123
--//也可以这样执行:
$ dc -e "10 o 16 i 7B pq"
123

--//简单总结,还有许多复杂的表示函数,不过感觉这些就够用了:
k  -> 表示精度
v  -> 表示平方根
_N -> 表示-N
p  -> 表示显示结果
i  ->输入进制
o  ->输出进制
q  -> 表示退出.
--//当然还有许多建议看man 文档。

--//以前的例子,将文本里面的数字累加:
$ cat a.txt
301000.0000
293000.0000
66000.0000
182000.0000
98000.0000
252914.5300
235000.0000
300000.0000
330000.0000

--//使用dc的难点是需要输出多少+.
$ (cat a.txt ; seq $(($(cat a.txt |wc -l ) -1 ))|xargs -I {} echo '+' ;echo pq ) | dc
2057914.5300

--//我找到当时检索到的方法不用计算输入多少加号的方法.
$ cat a.txt | dc -f - -e '[+z1<r]srz1<rp'
2057914.5300

--//-e后面那一串什么意思,即使看了man dc文档,我也没看懂表示什么意思.而且如果计算数据很多会非常慢.

标签:10,进制,16,--,20230823,dc,txt
From: https://www.cnblogs.com/lfree/p/17652888.html

相关文章

  • 【230823-3】▲ABC中,∠ABC=90°,AB=4,BC=3,点D在线段AC上,若角BDC=45°,则BD=?,Cos∠ABD=?
    ......
  • [20230809]ora-04030问题分析整理.txt
    [20230809]ora-04030问题分析整理.txt--//生产系统同事使用toad连接经常出现ora-04030错误。ORA-04030:outofprocessmemorywhentryingtoallocate123416bytes(QERHJhash-joi,kllcqas:kllsltba)--//仔细看joi确实不是join,开始猜测可能某个程序的sql语句选择hash-join,......
  • 20230823比赛
    T1MyCowAteMyHomeworkGMOJ6659DescriptionInyourbovinehistoryclass,youhavebeengivenaratherlonghomeworkassignmentwithNquestions(3≤N≤100,000),eachgradedwithanintegerscoreintherange0...10,000.Asisoftencustomary,yourtea......
  • Sigma-Delta ADC 简介
    本文转自:什么是Sigma-DeltaADC(linkchip.cn) Sigma-DeltaADC是一种目前使用最为普遍的高精度ADC结构,在精度达到20位以上的场合,Sigma-Delta是必选的结构。通过采用过采样、噪声整形以及数字滤波技术,降低对模拟电路的设计要求,实现了其他类型的ADC无法达到的高精度和低功耗。通......
  • unity在使用了HybridCLR进行编译时报错
    unity在使用了HybridCLR执行HybridCLR/Generate/All时,一直不成功,提示pleasefirstuse"HybridCLR/Generate/All"后面还有fatalerror:'icalls/mscorlib/System/MonoType.h'filenotfound#include"icalls/mscorlib/System/MonoType.h"每次执行HybridCLR/Gener......
  • BOSHIDA DC电源模块同类型号能否代替
    BOSHIDADC电源模块同类型号能否代替DC电源模块是我们在电路设计中经常使用的一种电源供应装置。一些项目需要特定的电压和电流,所以选择正确的电源是非常重要的。当我们开始设计一个电路时,我们需要考虑电源的性能、稳定性、可靠性、价格和供应周期等方面。有时候,我们可能需要在不......
  • P9562 [SDCPC2023] G-Matching
    思路易发现,如果\(i\)和\(j\)可以连边,\(j\)和\(k\)可以连边,那\(i\)和\(k\)也可以连边,如果\(x\)不能和\(i\)连边,那\(x\)同样不能和\(j,k\)连边。所以我们可以考虑把所有可以连边的放在一起,这样就把所有点分成了若干部分,并且每个部分不可能连边,必然是分割开的。......
  • P9560 [SDCPC2023] E-Math Problem
    思路首先发现应该优先除,理由很简单,如果先乘以\(k\)再加上一个不超过\(k\)的值,那么除以\(k\)后,就除回去了,没有发生任何变化。所以我们可以先枚举除以多少次\(k\),得到除以这么多次\(k\)后的\(n\)。我们再进行若干次乘法,计算\(n\)的取值范围\([l,r]\),那么只要这个区间......
  • AP9235 dc-dc升压恒流电源驱动IC 2.8-30V 输出电流2A SOT23-6
    概述 AP9235B系列是一款固定振荡频率、恒流输出的升压型DC/DC转换器,非常适合于移动电话、PDA、数码相机等电子产品的背光驱动。输出电压可达30V,3.2V输入电压可以驱动六个串联LED,2.5V输入电压可以驱动两路并联LED(每路串联三个LED)。通过改变CE脚上PWM信号的占空比可以控制LED的亮......
  • BOSHIDA DC电源模块关于高效率的特点
    BOSHIDADC电源模块关于高效率的特点DC电源模块是目前应用广泛的电源系统之一,它的高效率是其最为显著地特点之一。本文将从以下三个方面进行介绍:什么是DC电源模块、DC电源模块的工作原理以及DC电源模块的高效率特点。一、什么是DC电源模块DC电源模块是一种对电源进行电压、电流......