[20180211]在vim中使用bc进行各种运算.txt

简介: [20180211]在vim中使用bc进行各种运算.txt --//别人的建议,完善一下在vim调用bc进行各种运算. --//我以前定义如下,完成计算,10,16进制转换.

[20180211]在vim中使用bc进行各种运算.txt

--//别人的建议,完善一下在vim调用bc进行各种运算.
--//我以前定义如下,完成计算,10,16进制转换.

noremap  <Leader>cc Yp!!bc -lq<CR>kA = <ESC>J
noremap  <Leader>ch YpIobase=16;<ESC>!!bc -lq<CR>kA = 0x<ESC>Jxguu
noremap  <Leader>cd YpgUU:s/0x//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>J

--//去年完善实现oracle数据块转换,以及scn拆分为scn_wrap,scn_base的计算.

noremap  <Leader>c22 Y2pA/4194304<ESC>!!bc -q<CR>jA%4194304<ESC>!!bc -q<CR>2kA = set dba <ESC>3Js,<ESC>
noremap  <Leader>c32 Y4pA/4294967296<ESC>!!bc -q<CR>jA%4294967296<ESC>!!bc -q<CR>2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>jIobase=16;<ESC>A/4294967296<ESC>!!bc -q<CR>jIobase=16;<ESC>A%4294967296<ESC>!!bc -q<CR>guu2kA = scn_wrap,scn_base: <ESC>3Js,<ESC>
noremap  <Leader>c16 Y2pA/65536<ESC>!!bc -q<CR>jA%65536<ESC>!!bc -q<CR>2kA = /16 %16: <ESC>3Js,<ESC>

--//比如知道块地址有时候16进制的,比如0x0040007a,按照前面的设置
0x0040007a = 4194426
4194426 = set dba 1,122

--//先输入 \cd 转换 10进制,然后 \c22 转换 数据块的dba地址.有点麻烦,讲2者结合在一起:

noremap  <Leader>d22 YpgUU:s/0x//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>jY2pA/4194304<ESC>!!bc -q<CR>jA%4194304<ESC>!!bc -q<CR>2kA = set dba <ESC>3Js,<ESC>kJ

0x0040007a =
4194426 = set dba 1,122
--//这样输入\d22

0x0040007a = 4194426 = set dba 1,122

--//scn如果这样如何计算:
0x0005.bcf9fda3

noremap  <Leader>d32 YpgUU:s/0x//ge<ESC>:s/\.//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>jY2pA/4294967296<ESC>!!bc -q<CR>jA%4294967296<ESC>!!bc -q<CR>2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>kJ

0x0005.bcf9fda3  = 24645336483 = scn_wrap,scn_base: 5,3170500003
--//这样输入\d32

--//scn(10进制转换16进制形式)如果这样如何计算:
5.3170500003 

noremap  <Leader>h32 Ypg<ESC>:s/\./*4294967296+/gei<CR><ESC>!!bc -lq<CR>kA = <ESC>jY2pIobase=16;<ESC>A/4294967296<ESC>!!bc -q<CR>jIobase=16;<ESC>A%4294967296<ESC>!!bc -q<CR>guu2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>kJ

5.3170500003  = 24645336483 = scn_wrap,scn_base: 5,bcf9fda3

$cat bc.vim
noremap  <Leader>cc Yp!!bc -lq<CR>kA = <ESC>J
noremap  <Leader>ch YpIobase=16;<ESC>!!bc -lq<CR>kA = 0x<ESC>Jxguu
noremap  <Leader>cd YpgUU:s/0x//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>J

noremap  <Leader>c22 Y2pA/4194304<ESC>!!bc -q<CR>jA%4194304<ESC>!!bc -q<CR>2kA = set dba <ESC>3Js,<ESC>
noremap  <Leader>c32 Y4pA/4294967296<ESC>!!bc -q<CR>jA%4294967296<ESC>!!bc -q<CR>2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>jIobase=16;<ESC>A/4294967296<ESC>!!bc -q<CR>jIobase=16;<ESC>A%4294967296<ESC>!!bc -q<CR>guu2kA = scn_wrap,scn_base: <ESC>3Js,<ESC>
noremap  <Leader>c16 Y2pA/65536<ESC>!!bc -q<CR>jA%65536<ESC>!!bc -q<CR>2kA = /16 %16: <ESC>3Js,<ESC>

noremap  <Leader>d22 YpgUU:s/0x//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>jY2pA/4194304<ESC>!!bc -q<CR>jA%4194304<ESC>!!bc -q<CR>2kA = set dba <ESC>3Js,<ESC>kJ
noremap  <Leader>d32 YpgUU:s/0x//ge<ESC>:s/\.//gei<CR>Iibase=16;<ESC>!!bc -lq<CR>kA = <ESC>jY2pA/4294967296<ESC>!!bc -q<CR>jA%4294967296<ESC>!!bc -q<CR>2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>kJ

noremap  <Leader>h32 Ypg<ESC>:s/\./*4294967296+/gei<CR><ESC>!!bc -lq<CR>kA = <ESC>jY2pIobase=16;<ESC>A/4294967296<ESC>!!bc -q<CR>jIobase=16;<ESC>A%4294967296<ESC>!!bc -q<CR>guu2kA = scn_wrap.scn_base: <ESC>3Js.<ESC>kJ

目录
打赏
0
0
0
0
36
分享
相关文章
[20180417]vim小技巧.txt
[20180417]vim小技巧.txt --//今天调试plsql,发现跟踪到的sql语句在跟踪文件是在一行的,开始以为是开发写成这样,实际上PL/SQL写的语句 --//到跟踪就变成一行,这样就太长,这样为了更好观察我必须设置wrap,执行如下:set wr...
1089 0
[20131125]使用vim做合计计算.txt
[20131125]使用vim做合计计算.txt 工作需要,需要使用vim做合计计算,把一列的数据累加,输出结果,到www.vim.org网站检索,发现: http://www.
773 0
[20131125]vim的bccalc.vim插件有关问题以及10,16进制转换的简单方法.txt
[20131125]vim的bccalc.vim插件有关问题以及10,16进制转换的简单方法.txt链接: http://www.vim.org/scripts/script.
866 0
[20130425]使用vim编辑没有保存的恢复.txt
今天使用vim编辑一个存储过程的时候,正好接听一个电话,不知道什么回事,点击X,选择“否”,导致将近半个小时的工作没有保存下 来。 我冷静下来,想起使用vim会在它的dir目录保存为"原来文件名.swp".我的vim设置如下: set dir=d:\\temp缺省如果不设置,保存在当前目录。
1059 0
[20121207]vim中使用bc做10与16进制计算.txt
[20121207]vim中使用bc做10与16进制计算.txt工作中需要经常做10与16进制的转换,我记得以前有一个插件与vim结合可以实现简单的计算功能,比在平时输入是时输入ctrl+r=计算式(在插入模式)要方便一些,我个人计算时经常使用。
787 0
txt.vim : Universal syntax script for all txt docs, logs and other types
http://vim.sourceforge.net/scripts/script.php?script_id=1532 增加txt文件的显示效果,如图: http://www.
731 0
在vim中使用bc进行算术计算
今天同事想导入一个文本文件进入execl进行算术运算,我正好看了一下,好像使用bc更快一些。使用vim编辑好文件,然后执行cat foo | bc ,就可以得到结果。
873 0
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等