T-Kernel Data types

2023-11-18

来自:uT-Kernel 2.0 Specification

3.1.1     General Data Types

typedef   signed char           B;      /*   signed 8- bit integer */
typedef   signed short          H;      /*   signed 16 - bit integer */
typedef   signed long           W;      /*   signed 32 - bit integer */
typedef   signed long long      D;      /*   signed 64 - bit integer */
typedef   unsigned char        UB ;     /*   unsigned 8- bit integer */
typedef   unsigned short       UH ;     /*   unsigned 16 - bit integer */
typedef   unsigned long        UW ;     /*   unsigned 32 - bit integer */
typedef   unsigned long long   UD ;     /*   unsigned 64 - bit integer */


typedef   char                 VB ;     /*   8 - bit data without an intended type */
typedef   short                VH ;     /*   16 - bit data without an intended type */
typedef   long                 VW ;     /*   32 - bit data without an intended type */
typedef   long long            VD ;     /*   64 - bit data without an intended type */
typedef   void                 * VP ;   /*   pointer to data without an intended type */


typedef   volatile    B        _B ;     /* volatile declaration */
typedef   volatile    H        _H ;
typedef   volatile    W        _W ;
typedef   volatile    D        _D ;
typedef   volatile    UB       _UB ;
typedef   volatile    UH       _UH ;
typedef   volatile    UW       _UW ;
typedef   volatile    UD       _UD ;


typedef signed int             INT ;    /* signed integer of processor bit width */
typedef unsigned int           UINT ;   /* unsigned integer of processor bit width */


typedef INT                    SZ ;     /* Generic SiZe */


typedef INT                    ID ;     /* general ID */
typedef W                      MSEC ;   /* general time ( in milliseconds ) */


typedef void               (* FP ) () ;    /* general function address */
typedef INT                (* FUNCP ) () ; /* general function address */


# define LOCAL             static       /* local symbol definition */
# define EXPORT                         /* global symbol definition */
# define IMPORT            extern       /* global symbol reference */


/*
  * Boolean values
  *      TRUE = 1 is defined , but any value other than 0 is logically TRUE .
  *      Do NOT use as in if ( bool == TRUE )
  *      use as in if ( bool )
  */
typedef UINT             BOOL ;
# define TRUE            1            /* true */
# define FALSE           0            /* false */


/*
  * TRON character codes
  */
typedef UH               TC ;           /* TRON character codes */
# define TNULL           (( TC ) 0)     /* TRON code string termination */

3.1.2     Other Defined Data Types

typedef INT                 FN ;               /*   Function Codes */
typedef INT                 RNO ;              /*   rendezvous number */
typedef UW                  ATR ;              /*   Object / handler attributes */
typedef INT                 ER ;               /*   Error Code */
typedef INT                 PRI ;              /*   Priority */
typedef W                   TMO ;              /*   Timeout specification in milliseconds */
typedef D                   TMO_U ;            /*   Timeout specification in microseconds with 64 - ←
    bit integer */
typedef UW                  RELTIM ;           /* Relative time in milliseconds */
typedef UD                  RELTIM_U ;         /* Relative time in microseconds with 64 - bit          ←
    integer */

typedef struct systim {                        /* System time in milliseconds */
         W      hi ;                           /* High 32 bits */
         UW     lo ;                           /* Low 32 bits */
} SYSTIM ;

typedef D                   SYSTIM_U ;         /* System time in microseconds with 64 - bit integer           ←
    */

/*
  * Common constants
  */
# define NULL               0                  /*   Null pointer */
# define TA_NULL            0                  /*   No special attributes indicated */
# define TMO_POL            0                  /*   Polling */
# define TMO_FEVR           ( -1)              /*   Eternal wait */


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

T-Kernel Data types 的相关文章

  • JMeter简单使用

    一 下载安装 1 在官网下载或者在 share 192 168 1 201 share 开发工具 java apache jmeter 5 5 zip 2 解压 执行文件在bin目录中 二 常用测试组件 1 线程组 线程组是JMeter 中
  • 服务配置宝塔面板搭建环境及部署项目

    服务配置宝塔面板搭建环境及部署项目 1 登录你所购买阿里云服务器的账号 2 点击控制台 云服务器ecs 3 开通安全组开启端口 把需要访问的端口进行配置 选入方向 如 6379 8080 3306 80 21 22 443 4 获取服务器公
  • FOC和SVPWM的C语言代码实现   

    FOC和SVPWM的C语言代码实现 SVPWM的原理讲解在这儿 https blog csdn net qlexcel article details 74787619 comments 现在开始分析C语言的代码 代码建议复制到notepa
  • 【UE4】DataTable - 数据表

    本文使用 UE 4 26 引擎自带 ARPG 项目 从代码和编辑器两个方面记录一下 UE4 中的 DataTable 也就是数据表的用法 一 DataTable 是什么 DataTable 就是数据表 以下简称 DT 也就是二维的 M 行
  • OLED透明屏轻量化设计:提升便携性与用户体验的新方向

    随着科技的不断进步 OLED透明屏作为一种新兴的显示技术正逐渐走入人们的视野 除了在视觉效果上的优势 OLED透明屏在重量方面的设计也备受关注 对此 尼伽将深入探讨OLED透明屏轻量化设计的重要性 策略以及应用案例 希望看后对您有所启发 一
  • 面试机试题目,使用Spring + SpringMVC +Mybatis + html + css实现员工管理系统

    文章目录 机试挑战 需求分析 简介 访问地址 http 39 99 237 90 8080 employee http 39 99 237 90 8080 employee 源码 https github com Listen Y Java
  • Visual C++中函数的覆盖和函数的隐藏

    我是荔园微风 作为一名在IT界整整25年的老兵 今天来聊聊Visual C 中函数的覆盖和函数的隐藏 Visual C 中函数的覆盖和函数的隐藏与JAVA有很大不同 有些容易搞错的点和概念 我们要特别注意 首先 先满足一下急性子的同学 因为
  • 思科模拟器:nat地址转换-静态转换-动态转换-pat转换

    我么需要的环境 sw1为公司出口 192开头的网段为内网也就是公司内部 1动态 缺点 只能外网访问内网 内网无法访问外网 2静态 缺点 比如有两个公网ip如果在有两个人上网的时候 第三个人无法上网 由于使用设备不固定所以 外网无法访问内网
  • https证书过期处理方案及相关问题

    证书过期处理 1 替换证书操作 2 问题及处理 1 替换证书操作 证书由甲方提供 也可以去阿里云进行申请 前往nginx安装目录下的 conf cert替换旧的证书 目录 nginx conf cert 重启nginx操作 https bl
  • Android 开发中的权限申请

    一 权限动态申请 我们都知道 从 Android 6 0 开始 部分危险权限在 xml 注册的同时 还需要动态申请 1 需要动态申请的权限 Manifest permission CONTACTS 联系人 Manifest permissi
  • Pytorch 学习(三)sigmoid 逻辑回归预测

    1 数据预处理 处理多特征样本 import pandas as pd data pd read csv csv 划分数据 iloc 第一个参数 行 第二个参数 列 X data iloc 1 标签为 1 1 讲 1 替换为 0 Y dat
  • Shell中的幽灵王者—JAVAWEB 内存马 【认知篇】

    Goby社区第 21 篇技术分享文章 全文共 6700 字 预计阅读时间 17 分钟 自我介绍 大家好 我是 su18 无论是个人博客还是社区 已经很久没写技术文章了 原因有很多 时间 精力 心态等等 但在开源社区也算比较活跃 由于工作需要

随机推荐

  • JSONUtil.toJsonStr 时间变成了时间戳

    问题描述 我的接口是以Date来接收日期的 然后我在拿到这个对象参数后 通过hutool当中的JSONUtil toJsonStr将其序列化成json字符串 然后存储到数据库 然后存储到数据库当中发现这个字段是时间戳 DateTimeFor
  • 在Spring Boot使用Undertow服务

    1 undertow简介 Undertow是RedHAT红帽公司开源的产品 采用JAVA开发 是一款灵活 高性能的web服务器 提供了NIO的阻塞 非阻塞API 也是Wildfly的默认Web容器 在javaweb容器的世界里 Tomcat
  • mysql数据库三大引擎优缺点

    1 MyISAM 特性 不支持事务 表级锁定 并发性能大大降低 读写互相阻塞 适用场景 不支持事务 并发相对较低 表锁定 执行大量select语句操作的表 count 操作较快 不支持外键 注 查询速度快的原因 a MyISAM存储的直接是
  • sqlserver自动定时备份数据库并按日期命名

    sqlserver自动定时备份数据库并按日期命名 备份数据库是很有必要的 在维护软件和站点的时候关系到我们数据的安全和完整性 数据库为我们提供了自动备份功能 定时自动备份 SqlServerde 的维护计划中自带了备份数据库任务 并不是自动
  • Python 各种画图

    文章目录 Part I 基础知识 Chap I 快应用 Chap II 常用语句 Part II 画图样例 Chap I 散点图 Chap II 柱状图 Chap III 折线图 Chap IV 概率分布直方图 Chap V 累计概率分布曲
  • 用Python自动化处理Excel表格详解

    Excel表格基础知识 Excel表格可以帮助用户创建 编辑 格式化和计算数据 并生成各种图表和报表 Excel表格通常用于商业 金融 科学 教育等领域 Excel表格的常用操作 Excel表格的常用操作包括插入 删除 移动 复制 粘贴 排
  • ZYNQ LINUX 下 PL中断PS记录

    最近ZYNQ的项目需要 调试了PL中断PS的部分 下面将其中了解到信息记录下来 以防遗忘 如图一 图二所示 PL到PS的中断分为16个共享中断 SPI 和4个私有中断 PPI 本文用到了共享中断 着重介绍SPI中断 图一 图二 PL 侧16
  • 贝wa儿歌(安卓)

    本次贝wa儿歌为大家提供的是特殊版本的 软件需要注册登录才能才能使用VIP权限 安装好后 打开如果提示更新请点击取消 一定不要更新哦 贝瓦儿歌不仅只是儿歌 其实有很多分类的 包括有国学 动画 英语 故事 思维 情商 习惯等等 寓教于乐让小朋
  • java项目:基于springboot的商城系统(springBoot+mybatis+layui+jquery)1003

    项目描述 爱购商城 分为前端和后端两部分 主要功能包括 用户管理 轮播图管理 商品分类管理 商品品牌管理 商品管理 等功能 运行环境 jdk8 mysql IntelliJ IDEA maven 项目技术 springBoot mybati
  • 【C++11】 线程库的使用

    文章目录 1 线程库的基本使用 1 1 thread 1 2 this thread 1 3 线程函数参数 2 mutex 2 1 mutex的基本使用 2 2 mutex系列锁 2 3 lock guard与unique lock 3 原
  • 字符“&”在XML文件中需要被转义

    今天弄Mybatis的配置文件时 因为这样一条语句
  • Go 语言笔试面试题(并发编程)

    Q1 无缓冲的 channel 和 有缓冲的 channel 的区别 答案 对于无缓冲的 channel 发送方将阻塞该信道 直到接收方从该信道接收到数据为止 而接收方也将阻塞该信道 直到发送方将数据发送到该信道中为止 对于有缓存的 cha
  • 【Blender2.82a】学习记录

    Blender2 82a 学习记录 1 基本操作 1 1 界面操作 1 2 物体操作 1 3 建模基础 2021 12 13 最近的项目又要用到blender了 已经一年半没用过了 现在用的版本为2 93 6 尽管这篇记录的版本比较老了 但
  • 微信公众号开发本地调试方法

    前言 这几天一直想搞个公众号玩一玩 然后去阿里云买了个云服务器ECS 学生9 9 月 因为一开始接触云服务器 所以选了个window系统 然后在本地创建了一个简单的web项目 jyc 用来认证token 在云服务器里面搭了JDK和tomca
  • CMakeLists.txt指定GCC和g++版本号

    Centos默认的g 版本只有4 8 5一般需要升级g 版本 比如升级9 3 0 升级成功后再使用c 14会报unrecognized command line option std c 14 错误 由于有多个gcc版本 cmake使用的是
  • 向前走

    行脚僧云游山中 目力已经瞥见峰上那风化嶙峋的岩石 许是明日便能行至山顶 脚下不是山脉的主峰 但也是颇具险势 并非泛泛 篝火照耀面庞 在山洞的壁上投出巨大的身影 遁入空门近十载 离寺云游也两三个春秋了 原有些厌世 方才脱发出家 住持常言他有些
  • 「解码AGI 对话大模型」AGI创业者不能错过的五节课!

    由百度飞桨 文心大模型 BV百度风投联合主办 张江集团战略合作的AGI Foundathon 大模型创业松活动于9月11日全面上线 为了进一步提升开发者的创新能力和创业实力 主办方精心策划了全面的线上AGI创业营 本次创业营集创业辅导 技术
  • vue3-styled-components inject导致死循环

    npm vue3 styled components npm 低版本浏览器报错 chrome 49 Uncaught RangeError Maximum call stack size exceeded Vue warn Avoid ap
  • .net 和 java 技术对应关系

    net 和 java 技术对应关系 java 生态的优势早已人尽皆知 asp net core 的生态也呈欣欣向荣之势 作为高级技术从业人 你不应该落下任何一门技术 如果你正在将你的 java 知识体系同步到 net 或者正在将你的 net
  • T-Kernel Data types

    来自 uT Kernel 2 0 Specification 3 1 1 General Data Types typedef signed char B signed 8 bit integer typedef signed short