Historically Quality Control is term from 1970s which meaning was controlling of the final product qualitycontrolling of the final product quality. In 1980s this term get a new meaning when people realized that they should also control quality of intermediate productsalso control quality of intermediate products.
A decade later term Software Quality Assurance came up when stress was set not only on quality of products but also on monitoring the software engineering processes (popular ISO 9000 certificate is all about quality of process not final product). The thinking behind Software Quality Assurance is that if you provide high quality software development you would get hight quality productif you provide high quality software development you would get hight quality product. (In this context Prince2 is an interesting methodology: on one hand it stresses the focus on the product but on the other hand it provides well described processes which are means to get final product of high quality).
Lately, there came up another concept called Total quality management which stresses continuous improvement of the quality of products and processes.