国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

optee打印二進制

這篇具有很好參考價值的文章主要介紹了optee打印二進制。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

1、將如下代碼移植到你的c文件

#include <stdio.h>
#include <string.h>

char *strcat(char *dest, const char *src)
{
    char *tmp = dest;

    while (*dest)
        dest++;
    while ((*dest++ = *src++) != '\0');
    return tmp;
}

static void i_to_string(char *buf, char x)
{
	char shiwei = x /16;
	char gewei = x %16;
	
	buf[0] = ' ';
	buf[1] = shiwei >= 10 ? (shiwei - 10 + 'a') : (shiwei + '0');
	buf[2] = gewei >= 10 ? (gewei - 10 + 'a') : (gewei + '0');
	buf[3] = 0;
}

#define PRINT_BUF_MAX			(32)
#define TAG_STRING_MAX			(32)
static void print_step_hex_data(void *tag, void *pbuf, uint32_t len)
{
	int i;
	char buf[PRINT_BUF_MAX*4 + TAG_STRING_MAX] = {0};
	char temp_buf[4] = "HHH";

	memcpy(buf, (char *)tag, sizeof(buf));

	for (i=0;i<len;i++) {
		if (i % 16 ==0) {
			strcat(buf,"\n");
		}
		i_to_string(temp_buf, *((char *)pbuf + i)&0xff);
		strcat(buf, temp_buf);
	}
	strcat(buf,"\n");

	EMSG("%s", buf);
}

void print_hex_data(void *tag, void *pbuf, uint32_t len)
{
	int i;
	uint32_t block;
	uint32_t remainder;
	void *p;
	char tag_buf[TAG_STRING_MAX + 6] = {0};
	char tail_buf[6+4] = {0};

	p = pbuf;
	if (len<=PRINT_BUF_MAX) {
		memcpy(tag_buf,tag,TAG_STRING_MAX);
		strcat(tag_buf, " = ");
		return print_step_hex_data(tag_buf, p, len);
	} else {
		block = len / PRINT_BUF_MAX;
		remainder = len % PRINT_BUF_MAX;
		for (i=0;i<block;i++) {
			memcpy(tag_buf,tag,TAG_STRING_MAX);
			tail_buf[0] = '[';
			tail_buf[1] = i / 10 + '0';
			tail_buf[2] = i % 10 + '0';
			tail_buf[3] = ']';
			tail_buf[4] = 0;
			strcat(tag_buf, tail_buf);
			print_step_hex_data(tag_buf, p, PRINT_BUF_MAX);
			p = (char *)p + PRINT_BUF_MAX;
		}
		if (remainder) {
			memcpy(tag_buf,tag,TAG_STRING_MAX);
			tail_buf[0] = '[';
			tail_buf[1] = i / 10 + '0';
			tail_buf[2] = i % 10 + '0';
			tail_buf[3] = ']';
			tail_buf[4] = 0;
			strcat(tag_buf, tail_buf);
			print_step_hex_data(tag_buf, p, remainder);
		}
	}
}

2、 打印二進制的方法如下所示
print_hex_data("Cipher Data : ", tmp_buf, tmp_sz);
print_hex_data("Plaintext Data : ", out_buf, out_sz);文章來源地址http://www.zghlxwxcb.cn/news/detail-557758.html

到了這里,關(guān)于optee打印二進制的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • C語言二進制數(shù)據(jù)和16進制字符串互轉(zhuǎn)

    知識點:結(jié)構(gòu)體中的“伸縮型數(shù)組成員”(C99新增) C99新增了一個特性:伸縮型數(shù)組成員(flexible array member),利用這項特性聲明的結(jié)構(gòu),其最后一個數(shù)組成員具有一些特性。第1個特性是,該數(shù)組不會立即存在。第2個特性是,使用這個伸縮型數(shù)組成員可以編寫合適的代碼,就

    2024年02月13日
    瀏覽(28)
  • C語言文本模式和二進制模式

    本篇文章介紹一下C語言的文本模式和二進制模式 從宏觀上看,無論是文本文件還是二進制文件,文件中保存的都是 0和1的序列 ,因為磁盤只有這兩種狀態(tài)。不同的文件只是對0、1序列的解釋不同, 如果文件內(nèi)容是以字符編碼的方式保存到文件中的 ,無論是以哪種編碼方式,

    2024年02月05日
    瀏覽(19)
  • 【c語言】二進制文件的讀寫操作

    【c語言】二進制文件的讀寫操作

    創(chuàng)作不易,本篇文章如果幫助到了你,還請點贊 關(guān)注支持一下???)!! 主頁專欄有更多知識,如有疑問歡迎大家指正討論,共同進步! ??c語言系列專欄:c語言之路重點知識整合 ?? 給大家跳段街舞感謝支持!? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 本文基

    2024年02月12日
    瀏覽(23)
  • Python中二進制十進制轉(zhuǎn)換

    ????????hello大家好,今天我想和大家分享一下在Python中進制轉(zhuǎn)換加減法的方法。 ????????比如現(xiàn)在我們需要求100 + 10,然后需要將結(jié)果110以二進制的形式返回,又或者我們現(xiàn)在有一個小需求,就是要計算二進制1010和二進制1011的和是多少,然后依舊以二進制的形式返回

    2024年02月16日
    瀏覽(95)
  • python十進制轉(zhuǎn)二進制方法詳解

    python十進制轉(zhuǎn)二進制方法詳解

    ? 在 Python中,十進制數(shù)可以轉(zhuǎn)換成二進制數(shù)。例如: 但是,十進制數(shù)不是直接轉(zhuǎn)換成二進制,而是先轉(zhuǎn)換成二進制數(shù),再轉(zhuǎn)換成十進制。接下來我們來看看具體的實現(xiàn)方法: 首先我們來看一個例子: 上面代碼中,使用了循環(huán)遍歷的方法。從這個例子中我們可以發(fā)現(xiàn),需要遍

    2023年04月19日
    瀏覽(101)
  • 【Python 千題 —— 基礎(chǔ)篇】進制轉(zhuǎn)換:十進制轉(zhuǎn)二進制

    題目描述 計算機底層原理中常使用二進制來表示相關(guān)機器碼,學(xué)會將十進制數(shù)轉(zhuǎn)換成二進制數(shù)是一個非常重要的技能。現(xiàn)在編寫一個程序,輸入一個十進制數(shù),將其轉(zhuǎn)換成二進制數(shù)。 輸入描述 輸入一個十進制數(shù)。 輸出描述 程序?qū)⑤斎氲氖M制數(shù)轉(zhuǎn)換為二進制數(shù),并輸出其

    2024年02月07日
    瀏覽(30)
  • 【C語言】求二進制位中一的個數(shù)

    【C語言】求二進制位中一的個數(shù)

    原題鏈接:??途W(wǎng) 題目內(nèi)容: 寫一個函數(shù)返回參數(shù)二進制中 1 的個數(shù),負(fù)數(shù)使用補碼表示。 比如: 15????0000 1111????4 個 1 方法一: NumberOf1函數(shù)的實現(xiàn)比較簡單,它使用了一個循環(huán),不斷將n除以2,并判斷余數(shù)是否為1。如果余數(shù)為1,則說明n的二進制表示中最低位為1,計

    2024年02月09日
    瀏覽(26)
  • Python讀寫二進制文件

    Python 讀寫文件的二進制數(shù)據(jù)需要使用到struct模塊,進行C/C++與Python數(shù)據(jù)格式的轉(zhuǎn)換。 struct模塊中最常用的函數(shù)為pack和unpack,用法如下: 函數(shù) return explain pack(fmt,v1,v2…) string 按照給定的格式(fmt),把數(shù)據(jù)轉(zhuǎn)換成字符串(字節(jié)流),并將該字符串返回. pack_into(fmt,buffer,offset,v1,v2…) No

    2024年02月08日
    瀏覽(21)
  • 【初階C語言】操作符1--對二進制的操作

    【初階C語言】操作符1--對二進制的操作

    前言:本節(jié)內(nèi)容介紹的操作符,操作的對象是二進制位。所以前面先介紹整數(shù)的二進制位 1.二進制介紹 (1)整數(shù)的二進制表示形式有三種:原碼、反碼和補碼。 (2)原碼、反碼和補碼的長度有數(shù)據(jù)類型來決定,如整數(shù),就是四個字節(jié),轉(zhuǎn)化后是三十二位比特位,所以一個整

    2024年02月09日
    瀏覽(22)
  • PYTHON : 二進制 、 八進制 、十六進制的轉(zhuǎn)換和輸出

    PYTHON : 二進制 、 八進制 、十六進制的轉(zhuǎn)換和輸出

    十進制轉(zhuǎn)換成其他進制 保存為文本串 二進制 bIn() 八進制 oct() 十六進制 hex() 不輸出前綴 使用format函數(shù) 如果不想輸出進制前面的 前綴符號 , 這時我們就要使用format函數(shù) 在這里我們要注意 , 二進制和八進制 的再format里的 符號是‘b’,‘o’ 而十六進制format 里的符

    2023年04月09日
    瀏覽(104)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包