This document:Public document·View comments·Disposition of Comments·
Nearby:Efficient Extensible Interchange Working Group Other specs in this tool
Quick access to LC-2103 LC-2104 LC-2105 LC-2106 LC-2107 LC-2108 LC-2109 LC-2110 LC-2130 LC-2132 LC-2133 LC-2164 LC-2165 LC-2166 LC-2167 LC-2168 LC-2169 LC-2170 LC-2171 LC-2172 LC-2173 LC-2174 LC-2175 LC-2176 LC-2177 LC-2178 LC-2179 LC-2180 LC-2181 LC-2182 LC-2183 LC-2184 LC-2185 LC-2186 LC-2187 LC-2188 LC-2189 LC-2190 LC-2191 LC-2192 LC-2193 LC-2194 LC-2196 LC-2197 LC-2198 LC-2227 LC-2248
Previous: LC-2104 Next: LC-2169
In 7.1.8 Date-Time You choose to encode Date-Time, the following way Year Offset from 2000 Integer ( 7.1.5 Integer) MonthDay Month * 32 + Day 9-bit Unsigned Integer (7.1.9 n-bit Unsigned Integer) where day is a value in the range 1-31 and month is a value in the range 1-12. Time ((Hour * 60) + Minutes) * 60 + seconds 17-bit Unsigned Integer (7.1.9 n-bit Unsigned Integer) FractionalSecs Fractional seconds Unsigned Integer ( 7.1.6 Unsigned Integer) representing the fractional part of the seconds with digits in reverse order to preserve leading zeros TimeZone TZHours * 60 + TZMinutes 11-bit Unsigned Integer (7.1.9 n-bit Unsigned Integer) representing a signed integer offset by 840 ( = 14 * 60 ) presence Boolean presence indicator Boolean (7.1.2 Boolean) Since you have aligned MonthDay on 5 bits with <<Month * 2^5 + Day>> I propose to align the Hour/Minute/Seconds on 6 bits with Time : (Hour * 2^6 + Minutes) * 2^6 + seconds so as to replace multiplication by 60 with SHL and TimeZone : TZHours * 2^6 + TZMinutes