Python
 Computer >> コンピューター >  >> プログラミング >> Python

特定の位置から「k」ビットを抽出するPythonプログラム?


この関数は、pos位置からkビットを抽出し、抽出された値を返すために使用されます。ここでは、Pythonのスライス手法を使用します。

Input:: number=170
   K=5
   Pos=2   
Output=21

アルゴリズム

Extractionbit(no,k,pos)
/*user input number is stored in variable no, extracted bit is stored in variable k and the position of bit is pos. */
Step 1 : first convert the number into its binary form using bin().
Step 2 : remove the first two character.
Step 3 : then extracting k bits from starting position pos from right.so, the ending index of the extracting substring is e=len(bi)-pos and starting index=e-k+1
Step 4 : extract k bit sub-string.
Step 5 : convert extracted sub-string into decimal again.

サンプルコード

# python program to extract ‘k’ bits from a given position in a number 
def extractedbits(no,k,pos): 
   bi = bin(no)  
   bi = bi[2:]
   e = len(bi) - pos 
   s = e - k + 1
   substr = bi[s : e+1] 
   print ("FINAL RESULT ::>",int(substr,2)) 
# Driver program 
if __name__ == "__main__": 
   no=int(input("Enter number ::>"))
   k = int(input("Enter k bit's ::>"))
   pos = int(input("Enter position ::>"))
   extractedbits(no,k,pos) 

出力

Enter number ::>170
Enter k bit's ::>5
Enter position ::>2
FINAL RESULT ::>21

  1. 1からnまでのすべての数の合計セットビットをカウントするPythonプログラム。

    正の整数nが与えられると、その2進表現に変更し、設定されたビットの総数をカウントします。 例 Input : n=3 Output : 4 アルゴリズム Step 1: Input a positive integer data. Step 2: then convert it to binary form. Step 3: initialize the variable s = 0. Step 4: traverse every element and add. Step 5: display sum. サンプルコード # Python program to count set bits #

  2. 特定の文から重複する単語をすべて削除するPythonプログラム。

    与えられた文。特定の文から重複する単語をすべて削除します。 例 Input: I am a peaceful soul and blissful soul. Output: I am a peaceful soul and blissful. アルゴリズム Step 1: Split input sentence separated by space into words. Step 2: So to get all those strings together first we will join each string in a given list of strings. Step 3: