Hardware-software visualization to learn programming | IEEE Conference Publication | IEEE Xplore