Angela_Santos Posted May 22, 2014 Report Share Posted May 22, 2014 Necessito de fazer um programa em assembly em que multiplique dois números positivos de 16bits contidos nas celulas NUM1 e NUM2 (não posso usar a instrução Mul) Alguem me pode ajudar? Link to comment Share on other sites More sharing options...
lusitan Posted May 22, 2014 Report Share Posted May 22, 2014 Já lá vão uns anitos que não programo em assembly Basicamente tens de implementar a função de multiplicação. Duas maneiras: 1 - (Muito má) 5x3=5+5+5 ou 3+3+3+3+3 2 - (Muito boa) Aqui utilizamos o facto de multiplicar por potências de 2 corresponder a fazer shifts, operação que é bastante eficiente. Para isso tens de decompor um dos fatores em potências de 2 mais um resto. 5x3=5x(2+1)=5x2+5 ou 5x3=(4+1)x3=2x2x3+3 Espero que consigas avançar! 2 Report Link to comment Share on other sites More sharing options...
Angela_Santos Posted May 23, 2014 Author Report Share Posted May 23, 2014 Muito Obrigado pela ajuda assim que conseguir fazer coloco aqui a solução. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now