linux shell数学函数实现

2021/6/22 7:30:06

本文主要是介绍linux shell数学函数实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

#-------------( mathematical function)-----------------#
function hex_to_deci()   #16 ---> 10
{
	local a=$1
	local result
	result=$(awk 'BEGIN{printf('$a')}')
	echo $result
}
function deci_to_hex()   #10 ---> 16
{
	local a=$1
	local result
	result=$(awk 'BEGIN{printf("%#x",'$a')}')
	echo $result
}

function hexadecimal_add()
{
	local a=$1
	local b=$2
	local result
	let "result=a+b"
	result=$(deci_to_hex $result)
	echo $result
}
function decimal_add()
{
	local a=$1
	local b=$2
	local result
	let "result=a+b"
	echo $result
}
function hexadecimal_mux()
{
	local a=$1
	local b=$2
	local result
	let "result=a*b"
	result=$(deci_to_hex $result)
	echo $result
}
function decimal_mux()
{
	local a=$1
	local b=$2
	local result
	let "result=a*b"
	echo $result
}

function shift_left()
{
	local value=$1
	local offset=$2
	local result
	#mux_value=$[0x2**offset]
	#mux_value=$(hexadecimal_mux $value $mux_value)
	let "mux_value=value << offset"
	result=$(awk 'BEGIN{printf("%#x",'$mux_value')}')
	echo $result
}

function and_a_b()
{
	local a=$1
	local b=$2
	local result
	let "result=a&b"
	result=$(awk 'BEGIN{printf("%#x",'$result')}')
	echo $result
}
function or_a_b()
{
	local a=$1
	local b=$2
	local result
	let "result=a|b"
	result=$(awk 'BEGIN{printf("%#x",'$result')}')
	echo $result
}
#-------------( mathematical function End)-----------------#


这篇关于linux shell数学函数实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程