我打算每次都用8位輸入基本上採用64位輸入。我遇到的問題是,我有一個這些8位正在被寫入的64位的寄存器。迭代中每次8位在64位寄存器中被重疊。需要這個解決方案。C編程通過每次輸入8位輸入將64位值存儲在寄存器中
int main(){
int Status;i=9;
u64 input=0x0,read_data,input_value=0x0;
print("\r\nEnter 64 bit value:");
while(i--){
input = inbyte();
if (isalpha(input)) {
input = toupper(input);
}
input = atoh(&input);
input_value=input;
}
xil_printf("input = 0x%x\r\n",input_value);
發現存儲和讀取64位值有困難。 任何幫助表示讚賞!
請格式化您的代碼以使其可讀。 input_value會在每次迭代時被覆蓋,因爲您覆蓋它:'input_value = input'。 –
將舊值左移8位,然後或新值 – user4581301
閱讀初學者級C編程手冊中的按位操作符。 – Lundin