位運算與嵌入式程式設計之位制轉換之一

2021-06-17 00:10:39 字數 442 閱讀 3190

題:下面哪個進製能表述13*16=244是正確的?【中國台灣某計算機硬體公司v2023年5月面試題】

a. 5b. 7 c. 9d. 11

解析:13如果是乙個十進位制的話,它可以用13=1*10^1+3*10^0來表示。現在我們不知道13是幾進製,那我們姑且稱其x進製。x進製下的13轉化為x進製可以用13=1*x^1+3*x^0表示;x進製下16轉化為x進製可以用16=1*x^1+6*x^0表示;x進製下的244轉化為x進製可以用244=2*x^2+4*x^1+4*x^0表示;因此x進製下的13*16=244可以轉化為十進位制下的等式:(1*x^1+3*x^0)*(1*x^1+6*x^0)=2*x^2+4*x^1+4*x^0。

整理得x*x+6*x+3*x+3*6=2*x*x+4*x+4;最後得出乙個一元二次方程x*x-5*x-14=0。答案x=-2或者x=7。x=-2不合題意捨棄,所以x=7。

答案:b

嵌入式程式設計 c位操作

在學習c語言位操作前需要具備十六進製制和二進位制的知識以及從二進位制與十六進製制的相互轉換,相應的教程請移步新增鏈結描述 現在掌握了十六進製制和二進位制之間的相互轉換知識,我們可以從c中的按位 或位級別 運算開始。基本上有6種型別的按位運算子。這些是 1.以 表示 或 運算子 2.以 表示 與 運算...

位運算做個筆記(嵌入式用得多)

前面介紹的各種運算都是以位元組作為最基本位進行的。但在很多系統程式中常要求在位 bit 一級進行運算或處理。語言提供了位運算的功能,這使得 語言也能像組合語言一樣用來編寫系統程式。一 位運算子 語言提供了六種位運算子 按位與 按位或 按位異或 取反 左移 右移 1.按位與運算 按位與運算子 是雙目運...

嵌入式linux C語言(一) 位運算的使用

嵌入式linux c語言 一 位運算的使用 arm是記憶體與io統一編址,soc中有很多控制暫存器,通過對這些暫存器進行位運算對這些控制暫存器進行設定,進而控制外設功能。在修改暫存器某些位的過程中不能修改其他的位。c語言基本的位操作符有與 或 異或 取反 左移 右移六種位運算子。如下表所示 符號描述...