Specflow and Fitnesse approach the process of testing in two different ways. The process of passing different inputs into your tests is very much a way of exploring the functionality of what the system can do. BDD however is all about defining scenarios that define exactly what the system should do.
As a result, I would suggest the execution pattern for these processes differs. FitNesse doesn't seem to support automated executiuon of the tests, you have to manually click the test button. SpecFlow tests are usually run following every build as a verification that the system is correctly adhering to its scenarios.
I get the feeling that you are used to FitNesse and your questions really feel like you are trying to work out how to get SpecFlow to work like FitNesse. Instead of that, I'd suggest that you will learn a lot more if you try it out and follow some of the initial examples through before you worry about the details.
And finally,
-1. With any line from a SpecFlow scenario, it is bound to a line of code, so
When I want to multiply 3 x 2
When I want to multiply 10 x 5
could both be bound to
[When("I want to multiply (\d+) x (\d+)")]
public void WhenIwantToMultiply(int x, int y)
....
-2. As you can imagine from the the above typing things long hand leads to patterns that could easily be representated tabularly, and SpecFlow uses Outlines and examples to handle this
Scenario Outline: eating
Given there are <start> cucumbers
When I eat <eat> cucumbers
Then I should have <left> cucumbers
Examples:
| start | eat | left |
| 12 | 5 | 7 |
| 20 | 5 | 15 |
This example stolen from https://github.com/cucumber/cucumber/wiki/Scenario-Outlines where there is far more detail