Hi, I've got a question about using the 6800 emulator to create a program that multiplies 2 arbitary 8 bit numbers to generate an 8 bit number. now, i've attempted it, this is what i've done in the quote below. Okay, the teacher went through it in class, and he showed how it was shifting each step, eg: C P A 0 0000 1011 N=1 0 1110 1011 (LSB = 1, so P+B=P) 0111 0101 (Shift Bits Right) N=2 1 0101 0101 (LSB = 1, so P+B=P) 0 1010 1010 (Shift Bits Right) So at first i couldn't do it, but i attempted it and i did that in the quote up the top. I don't think it's correct though cause when i look at it, it just doesn't look right. I was wondering if anyone could give me some pointers on what im doing wrong so I at least know how to fix it. Thanks, Ashley
right it didn't list the codes very well, i'll list them again: Code: eleven .equ 11 fourteen .equ 14 P .equ 0 ldab #4 loop cba ldaa #eleven tst 0,x jmp PnB PnB ldaa #fourteen adda #P jmp plus plus asla staa P jmp shiftP shiftP ldaa #P asla decb tstb bne loop .org $0120 .end and the other code Code: C P A 0 0000 1011 N=1 0 1110 1011 (LSB = 1, so P+B=P) 0111 0101 (Shift Bits Right) N=2 1 0101 0101 (LSB = 1, so P+B=P) 0 1010 1010 (Shift Bits Right)
Hi, I've got a question about using the 6800 emulator to create a program which counts the number of factors of an input variable. The input is stored at the end of the program in the variable n. The output should be stored in a variable called numFactors. Now, i've attempted it, this is what i've done in the quote below. ldaa n ldab x startloop suba numFactors tsta dec x bmi stop bra startloop n .byte 15 x .byte 1 numFactors .byte 1 stop .end