View the read-only file by simply clicking it in the list above.
Launch it in a local Jupyter server by clicking IT_Lab_Test.ipynb
Launch on public Binder server by clicking launch Binder
below:
Macro definitions we used during the labs:
#define READ_BIT(x,i) (int)(((x) & (1U << (i))) != 0) /* read bit i from x */
#define SET_BIT(x,i) ((x) = (x) | (1U << (i))) /* set bit i from x to 1 */
#define CLEAR_BIT(x,i) ((x) = (x) & ~(1U << (i))) /* clear bit i from x to 0 */
#define WRITE_BIT(x,i,val) ((val) ? SET_BIT((x),(i)) : CLEAR_BIT((x),(i))) /* write 'val' in bit i from x */
#define TOGGLE_BIT(x,i) ((x) = (x) ^ (1U << (i))) /* toggle bit i from x */
#define VECREAD_BIT(v,i) (READ_BIT((v[(i)/8]),(i)%8)) /* read bit i from byte vector v */
#define VECWRITE_BIT(v,i,val) (WRITE_BIT((v[(i)/8]),((i)%8),val)) /* write 'val' in bit i from byte vector v */
#define VECTOGGLE_BIT(v,i) (TOGGLE_BIT((v[(i)/8]),(i)%8))
These laboratories use xeus-cling
, a Jupyter kernel for C++ based on the C++ interpreter cling and
the native implementation of the Jupyter protocol xeus.